字符串扩展-padStart()和padEnd()

Posted ghc520

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串扩展-padStart()和padEnd()相关的知识,希望对你有一定的参考价值。

是ES6中新增的给字符串补充长度的新方法String.prototype.padStart(maxLength,fillString=‘  ‘)或者String.prototype.padEnd(maxLength,fillString=‘  ‘)填充字符串。

maxLength来规定这个字符串的长度。fillString=‘  ‘要补充的内容。

padStart()在字符串头部补全。

padEnd()在字符串尾部补全。

 

1 ‘AA‘.padStart(5,‘B‘)  //输出:BBBAA
2 ‘AA‘.padStart(5,‘BC‘)  //输出:BCBAA
3 
4 ‘AA‘.padEnd(5,‘B‘) //输出:AABBB
5 ‘AA‘.padEnd(5,‘BC‘) //输出:AABCB

 

(1)如果原字符串长度等于或大于指定得最小长度,则返回原字符串。

 

1 ‘AAAA‘.padStart(2,‘BB‘) //输出:AAAA
2 ‘AAAA‘.padEnd(2,‘BB‘) //输出:AAAA

 

(2)  如果用来补齐的字符串与原字符串两者的长度之和超过了指定的最小长度,则会截取超过位数的补全字符串。

 

1 ‘AAA‘.padStart(5,‘BCDE‘) //输出:BCAAA
2 ‘AAA‘.padEnd(5,‘BCDE‘) //输出:AAABC

 

(3)  如果省略第二个参数,默认使用空格补全。下面的代码是生成10位的数值字符串。

 

1 ‘A‘.padStart(4) //输出:‘          A‘
2 ‘A‘.padEnd(4) //输出:‘A          ‘

使用场景:可用在时间格式的转换问题上:

 

 1 var da = new Date()
 2 var y = da.getFullYear()
 3 var m = (da.getMonth()+1).toString().padStart(2,‘0‘)
 4 var d = da.getDate().toString().padStart(2,‘0‘)
 5 var h = da.getHours().toString().padStart(2,‘0‘)
 6 var f = da.getMinutes().toString().padStart(2,‘0‘)
 7 var s = da.getSeconds().toString().padStart(2,‘0‘)
 8 
 9 return `$y-$m-$d $h:$f:$s`
10 
11 //因为时间在单位数时会出现2019-2-10 8:10:5的样式
12 //可以使用补全代码的方式,输出:2019-02-10 08:10:05

 

 

  

 

以上是关于字符串扩展-padStart()和padEnd()的主要内容,如果未能解决你的问题,请参考以下文章

Vue字符串padStart和padEnd方法

padStart()方法,padEnd()方法

js中使用padStart()和padEnd() 补齐指定位数

ECMAScript6补全字符串长度方法padStart()和padEnd()

js字符串补全 padStart padEnd

JS字符串补全方法padStart()和padEnd()