padStart()方法, padEnd()方法
判断 字符是位数是否有 第一个参数那么多,没有就使用第二个参数补全。直到字符串长度符合第一个参数的数量。
| filters:{ formatDate(date){ const newdata = new Date(date) const year = newdata.getFullYear() const month = newdata.getMonth().toString().padStart(2,0) const day = newdata.getDay().toString().padStart(2,0) return year+'-'+month+'-'+day } },
|
ES2017 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。padStart()用于头部补全,padEnd()用于尾部补全。
| "x".padStart(5, "ab"); "x".padStart(4, "ab"); "x".padEnd(5, "ab"); "x".padEnd(4, "ab");
|
上面代码中,padStart()和padStart()一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来补全的字符串。
如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串。
| "xxx".padStart(2, "ab"); "xxx".padEnd(2, "ab");
|
如果用来补全的字符串与原字符串,两者的长度之和超过了指定的最小长度,则会截去超出位数的补全字符串。
| "abc".padStart(10, "0123456789");
|
如果省略第二个参数,默认使用空格补全长度。
| "x".padStart(4); "x".padEnd(4);
|
padStart()的常见用途是为数值补全指定位数。下面代码生成 10 位的数值字符串。
| "1".padStart(10, "0"); "12".padStart(10, "0"); "123456".padStart(10, "0");
|
另一个用途是提示字符串格式。
| "12".padStart(10, "YYYY-MM-DD"); "09-12".padStart(10, "YYYY-MM-DD");
|