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 

沒有留言: