av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

JS字符串補(bǔ)全方法padStart()和padEnd()

瀏覽:120日期:2024-05-07 09:47:38

這個方法無意中看到的,感覺還是蠻實用的,特此分享一波。我想大家都會有遇到將時間戳轉(zhuǎn)換成時間格式的時候,時間或日期不足2位的前面補(bǔ)0。有了今天說的這個東西,就又可以少寫幾行代碼了,大家在項目中遇到類似場景可以去使用感受下。

ES2017 引入了字符串補(bǔ)全長度的功能。如果某個字符串不夠指定長度,會在頭部或尾部補(bǔ)全。

padStart() padEnd() 方法用另一個字符串填充當(dāng)前字符串(如果需要的話則重復(fù)填充),返回填充后達(dá)到指定長度的字符串。padStart() 從當(dāng)前字符串的開始(左側(cè)) 位置填充。padEnd() 從當(dāng)前字符串的末尾(右側(cè))開始填充。

語法:

str.padStart(targetLength [, padString])str.padEnd(targetLength [, padString])

padStart() 和 padEnd() 一共接受兩個參數(shù),第一個參數(shù) targetLength 是當(dāng)前字符串需要填充到的目標(biāo)長度,第二個參數(shù) padString 是用來填充的字符串,缺省值為' '。

返回值:

在原字符串開頭填充指定的填充字符串直到目標(biāo)長度所形成的新字符串。

如果 targetLength 小于當(dāng)前字符串的長度,則字符串補(bǔ)全不生效,返回當(dāng)前字符串本身。

’abc’.padStart(1, ’d’); // 'abc'’abc’.padEnd(1, ’d’); // 'abc'

如果 targetLength 小于用來填充的字符串長度與原字符串的長度之和,則截掉超出位數(shù)的補(bǔ)全字符串。

’abc’.padStart(6,'123456'); // '123abc'’abc’.padEnd(6, '123456'); // 'abc123'

如果省略第二個參數(shù) padString,即使用空格補(bǔ)全長度。

’abc’.padStart(10); // ' abc'’abc’.padEnd(10); // 'abc '

如果 padString 長度過長,則會刪除后面多出的字符串。

’abc’.padStart(5, 'foo'); // 'foabc'’abc’.padEnd(5, 'foo'); // 'abcfo'

應(yīng)用:

補(bǔ)全指定位數(shù),如格式化時間或日期時,個位數(shù)補(bǔ)0 提示字符串格式 字符串拼接

示例:

當(dāng)我們使用時間戳并轉(zhuǎn)換成 yyyy-mm-dd hh:mm:ss 的格式。

function dataFormat(data) { const dt = new Date(data * 1000) //注:如果是13位時間戳不用*1000 const y = dt.getFullYear() const m = (dt.getMonth() + 1 + ’’).padStart(2, ’0’) const d = (dt.getDay() + ’’).padStart(2, ’0’)​ const hh = (dt.getHours() + ’’).padStart(2, ’0’) const mm = (dt.getMinutes() + ’’).padStart(2, ’0’) const ss = (dt.getSeconds() + ’’).padStart(2, ’0’)​ return `${y}-${m}-$0gym22g6m8ya ${hh}:${mm}:${ss}`}

因著此方法是ES6新增方法,部分瀏覽器不支持,會有兼容性問題。 查看 Polyfill 創(chuàng)建的String.prototype.padStart() / String.prototype.padEnd() 方法。

// https://github.com/uxitten/polyfill/blob/master/string.polyfill.js// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padEndif (!String.prototype.padEnd) { String.prototype.padEnd = function padEnd(targetLength,padString) { targetLength = targetLength>>0; //floor if number or convert non-number to 0; padString = String((typeof padString !== ’undefined’ ? padString: ’’)); if (this.length > targetLength) { return String(this); } else { targetLength = targetLength-this.length; if (targetLength > padString.length) {padString += padString.repeat(targetLength/padString.length); //append to original to ensure we are longer than needed } return String(this) + padString.slice(0,targetLength); } };}

到此這篇關(guān)于JS字符串補(bǔ)全方法padStart()和padEnd()的文章就介紹到這了,更多相關(guān)JS padStart() padEnd()內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 午夜成人免费视频 | 成年人免费在线观看 | 久久精选视频 | 日韩视频免费 | 美女视频一区二区 | 成人黄色免费网站 | 天天干天天操天天 | 国产精品久久久久永久免费看 | 久久久精 | 黄色片网站在线观看 | 午夜成人在线视频 | 国产理论在线 | 一级片中文字幕 | 成人在线视频免费 | 国产精品成人国产乱 | 中文字幕免费观看 | 国产乱码精品一区二区三 | 特黄视频 | 欧美大片黄 | 久久久久综合 | 国产精品免费在线播放 | 夜夜操天天操 | 国产精品成人网 | 精品视频在线观看免费 | 女人高潮特级毛片 | 日韩欧美在线视频 | 国产欧美一区二区 | 免费视频a| 国产欧美一区二区三区在线看蜜臀 | 中文字幕在线观看网址 | 欧洲精品一区二区 | 成人亚洲天堂 | 国产精品一线 | 激情影院在线观看 | 日韩精品一区在线观看 | 手机在线播放av | 久久超| aaa黄色| 日韩欧美中文在线 | 三a毛片| 五月婷婷丁香六月 |