最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • ES6 拓展基础类型的属性和方法

    正文概述 掘金(妖主大人)   2021-01-07   497

    any.prototype

    这是一个 JavaScript 变量的属性和方法拓展库。为防止代码入侵,在每个属性和方法的名字前加上一个 $ 符号。链接看这里

    Install

    yarn add any.prototype
    

    or

    npm install any.prototype
    

    Import

    你可以全部导入

    import 'any.prototype'
    

    也可以单个类型导入

    import 'any.prototype/String.prototype'
    
    import 'any.prototype/Array.prototype'
    

    Array

    判断数组中是否包含该元素

    array.$have(element)
    
    const array = [1, 2, 3]
    const value = array.$have(0)
    console.log(value) // false
    

    删除数组中指定索引的元素,返回被删除的元素值

    array.$remove(index)
    
    const array = [1, 2, 3]
    const value = array.$remove(0)
    console.log(value) // 1
    console.log(array) // [2, 3]
    

    获取数组中第一个元素

    array.$first
    
    const array = [1, 2, 3]
    const value = array.$first
    console.log(value) // 1
    

    获取数组中最后一个元素

    array.$last
    
    const array = [1, 2, 3]
    const value = array.$last
    console.log(value) // 3
    

    Date

    时间格式化,返回字符串

    date.$format(formatter)
    
    const date = new Date()
    const value = date.$format('yyyy-MM-dd HH:mm:ss S')
    console.log(value) // 2021-01-06 13:52:10 675
    

    根据时间戳时间格式化

    // 无论时间戳是秒还是毫秒,内部都会转换为毫秒,所以外部不用再去做转换
    const timestamp = '1609900369647'
    
    // 只传时间戳,返回的是 Date 类型的对象
    const date = Date.$init(timestamp)
    
    // 传时间戳和格式,返回的是对应格式的字符串数据
    const date = Date.$init(timestamp, 'HH:mm:ss')
    
    // 传时间戳和空格式,返回的是对应标准格式的字符串数据
    const date = Date.$init(timestamp, '')
    

    获取当前的时间戳

    // 不传参数或传 's',返回的是以秒为单位的时间戳
    Date.$time()
    Date.$time('s')
    
    // 传 'ms',返回的是以毫秒为单位的时间戳
    Date.$time('ms')
    

    Promise

    多个 Promise 同时一起进行,最先成功的返回 resolve,都失败了返回 reject,可以参考 Promise.race()

    Promise.$heap(array)
    
    const api1 = _ => new Promise()
    const api2 = _ => new Promise()
    const api3 = _ => new Promise()
    const array = [api1, api2, api3]
    Promise.$heap(array)
    

    多个 Promise 依次进行,若有一个成功的返回 resolve,最后一个也失败了返回 reject,可以参考 Promise.race()

    Promise.$queue(array)
    
    const api1 = _ => new Promise()
    const api2 = _ => new Promise()
    const api3 = _ => new Promise()
    const array = [api1, api2, api3]
    Promise.$queue(array)
    

    String

    字符串格式化

    '{} {}!'.format('Hello', 'World') // 'Hello World!'
    

    字符串格式化,也可以在最后一个参数传递被函数包裹的自定义格式符

    '%@ %@!'.format('Hello', 'World', _ => '%@') // 'Hello World!'
    

    字符串转换HTML转义符, 防代码注入

    '<p>hello<p>'.$replaceHTMLChar() // '&lt;p&gt;hello&lt;p&gt;'
    

    字符串前后加上单引号,在使用数据库增删改查时可能用到

    'hello'.$quote // "'hello'"
    

    字符串去除前后的空白字符

    ' hel lo  '.$trim // 'hel lo'
    

    Contact me

    • github.com/mr-huangjian
    • mr.huangjian@foxmail.com


    起源地下载网 » ES6 拓展基础类型的属性和方法

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元