String.prototype.padStart()

padStart() メソッドは、結果の文字列が指定した長さになるように、現在の文字列を他の文字列で (必要に応じて繰り返して) 延長します。延長は、現在の文字列の先頭から適用されます。

試してみましょう

構文

str.padStart(targetLength [, padString])

引数

targetLength

現在の str の延長後に返される文字列の長さです。この値が str.length よりも短い場合、 str がそのまま返されます。

padString 省略可

現在の str を延長するための文字列です。 padStringtargetLength より長い場合は、右からその長さ分が切り捨てられます。この引数の既定値は、 " " (U+0020 'SPACE') です。

返値

現在の文字列の先頭に padString が適用された、指定された targetLength の長さの String です。

基本的な例

'abc'.padStart(10);         // "       abc"
'abc'.padStart(10, "foo");  // "foofoofabc"
'abc'.padStart(6,"123465"); // "123abc"
'abc'.padStart(8, "0");     // "00000abc"
'abc'.padStart(1);          // "abc"

数値を固定長文字列へ変換

// Javascript version of: (unsigned)
//  printf "%0*d" width num
function leftFillNum(num, targetLength) {
    return num.toString().padStart(targetLength, 0);
}

const num = 123;
console.log(leftFillNum(num, 5));
// expected output: "00123"

仕様書

Specification
ECMAScript Language Specification
# sec-string.prototype.padstart

ブラウザーの互換性

BCD tables only load in the browser

関連情報