【公告】網站目前停止所有的課程訂閱服務,原有學員權益不受影響,造成不便還請見諒,我們正在打造更多課程以及圖書,包含 Python 為主的課程主題,未來將會合併且擴充目前的課程內容,提供全新課程訂閱服務,感謝學員的支持。
【公告】《Entity Framework 實務精要》 絕版優惠學習活動,是針對最後一批少量書籍絕版的短期特別活動,只提供 20 個名額(剩 7 名),教學影片要在今年暑假過後才會重新開放訂閱,並沒有提供之前單獨購書的讀者,還請見諒, 如果您需要教學影片,屆時再請參與,也感謝讀者學員的支持,我們正在開發更多的教學內容,歡迎與我們一起努力。
《Entity Framework 實務精要》 絕版優惠學習活動》

JavaScript 填補字串

當你想要為字串填補特定字元時,可以透過 slice() 方法進行實作,此方法可以透過字串進行調用,它接受兩個參數如下:

str.slice(start,end)

其中的 str 為一特定字串,start 與 end 分別表示字串中的字元索引位置,一旦 slice() 執行元畢,str 字串的內容從 start 到 end 的部份將被擷取下來。考慮以下的程式片段:

var str = 'ABCDEFGHIJK';
console.log(str.slice(3,7));

這一段程式碼的輸出結果為 DEFG,slice 中的參數 end 可以省略,如果僅指定 start ,則從 start 這個位置以後字元全部會被擷取。start 亦接受負值,例如以下這一行:

其中指定了 -5 ,表示要從字串的最末端開始,往前擷取 5 個字元,因此得到 GHIJK 的結果。利用這種特性,我們可以進一步實作填補字串的功能,假設我們需要一個固定長度8的數字字串,不足8位數的開頭以0補齊,可以利用以下的程式碼:

 var pnumber = '00000000';
var n = pnumber + '1234567';
var n0 = pnumber+'123456';
var n1 = pnumber + '1234';
var n2 = pnumber + '12';

console.log(n.slice(-8));
console.log(n0.slice(-8));
console.log(n1.slice(-8));
console.log(n2.slice(-8));

現在只要 subStr  少於 8 個字元均會以 0 補齊,結果如下:

01234567
00123456
00001234
00000012 

沒有留言: