padStart和padEnd是类似的用法,padEnd是向后补位,padStart是在前边补位。
在此只举例padStart
const name = "Lydia Hallie";
// (只有一个参数,默认第二个参数为' ')
// 1.targetLength(2)小于当前字符串(12)的长度,则字符串补全没效果,返回当前字符串本身.
console.log(name.padStart(2))//Lydia Hallie
// 2..targetLength(13)大于当前字符串(12)的长度,在原字符串的前面加(13-12) 一个空格,返回填充后的新字符串
console.log(name.padStart(13))// Lydia Hallie
// (两个参数)
// 如果补全字符串长度不足,则不断循环补全;如果长度超出,则从左侧开始依次补全,没有补到的字符串直接就忽略。
console.log(name.padStart(18,'jia'))//jiajiaLydia Hallie
console.log(name.padStart(18,'wangjia'))//wangjiLydia Hallie
常用的案例:
function dataFormat(data) {
const dt = data
const y = dt.getFullYear()//年
const m = (dt.getMonth() + 1 + '').padStart(2, '0')//月
const d = (dt.getDate() + '').padStart(2, '0')//日
const hh = (dt.getHours() + '').padStart(2, '0')//时
const mm = (dt.getMinutes() + '').padStart(2, '0')//分
const ss = (dt.getSeconds() + '').padStart(2, '0')//秒
const w = "星期" + "日一二三四五六".charAt(dt.getDay())//星期
return `${y}-${m}-${d} ${hh}:${mm}:${ss} ${w}`
}
console.log(dataFormat(new Date())) //Wed Jul 19 2023 14:57:48 GMT+0800 (中国标准时间)
console.log(new Date()) //2023-07-19 14:57:31 星期三