美文网首页
padStart()方法,padEnd()方法

padStart()方法,padEnd()方法

作者: lovelydong | 来源:发表于2019-06-15 14:54 被阅读0次
    偶然看到一个方法
    随机生成六位数字验证码
    const code = Math.floor(Math.random() * 1000000).toString().padStart(6, "0");
    

    研究下padStart方法

    padStart()方法,padEnd()方法ES6 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。padStart()用于头部补全,padEnd()用于尾部补全。

    'x'.padStart(5, 'ab') // 'ababx'
    'x'.padStart(4, 'ab') // 'abax'
    'x'.padEnd(5, 'ab') // 'xabab'
    'x'.padEnd(4, 'ab') // 'xaba'
    
    上面代码中,padStart()和padStart()一共接受两个参数,第一个参数用来指定字符串的长度,第二个参数是用来补全的字符串。
    如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串。
    'xxx'.padStart(2, 'ab') // 'xxx'
    'xxx'.padEnd(2, 'ab') // 'xxx'
    
    如果用来补全的字符串与原字符串,两者的长度之和超过了指定的最小长度,则会截去超出位数的补全字符串。
    'abc'.padStart(10, '0123456789')
    // '0123456abc'
    
    如果省略第二个参数,默认使用空格补全长度。
    'x'.padStart(4) // ' x'
    'x'.padEnd(4) // 'x '
    
    padStart()的常见用途是为数值补全指定位数。下面代码生成 10 位的数值字符串。
    '1'.padStart(10, '0') // "0000000001"
    '12'.padStart(10, '0') // "0000000012"
    '123456'.padStart(10, '0') // "0000123456"
    
    另一个用途是提示字符串格式。
    '12'.padStart(10, 'YYYY-MM-DD') // "YYYY-MM-12"
    '09-12'.padStart(10, 'YYYY-MM-DD') // "YYYY-09-12"
    

    相关文章

      网友评论

          本文标题:padStart()方法,padEnd()方法

          本文链接:https://www.haomeiwen.com/subject/hysbfctx.html