Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
- トップページ
- JavaScript辞典
- 文字列.padStart() / padEnd() / repeat()
文字列.padStart() / padEnd() / repeat()対応: ES2017(ECMAScript 2017)
文字列を指定した長さになるまで先頭や末尾に文字を埋め込んだり、同じ文字列を繰り返したりします。
構文
// 指定した長さになるまで先頭に文字を埋め込みます。 文字列.padStart(目標の長さ) 文字列.padStart(目標の長さ, "埋め込む文字列") // 指定した長さになるまで末尾に文字を埋め込みます。 文字列.padEnd(目標の長さ) 文字列.padEnd(目標の長さ, "埋め込む文字列") // 文字列を指定した回数だけ繰り返します。 文字列.repeat(回数)
メソッド一覧
| メソッド | 概要 |
|---|---|
| padStart(目標の長さ) | 文字列の長さが目標に達するまで先頭にスペースを埋め込みます。 |
| padStart(目標の長さ, "埋め込む文字列") | 先頭に指定した文字列を埋め込みます。すでに目標の長さ以上の場合はそのまま返されます。 |
| padEnd(目標の長さ) | 文字列の長さが目標に達するまで末尾にスペースを埋め込みます。 |
| padEnd(目標の長さ, "埋め込む文字列") | 末尾に指定した文字列を埋め込みます。すでに目標の長さ以上の場合はそのまま返されます。 |
| repeat(回数) | 文字列を指定した回数だけ繰り返した新しい文字列を返します。 |
サンプルコード
// padStart で数値のゼロ埋めを行います。
var num = "5";
console.log(num.padStart(3, "0")); // 『005』と出力されます。
// 日付のフォーマットに活用できます。
var month = "3";
var day = "7";
var date = "2026-" + month.padStart(2, "0") + "-" + day.padStart(2, "0");
console.log(date); // 『2026-03-07』と出力されます。
// padEnd で文字列を右側に揃えます。
console.log("Name".padEnd(10, ".") + "Kuu"); // 『Name......Kuu』と出力されます。
console.log("Price".padEnd(10, ".") + "500"); // 『Price.....500』と出力されます。
// すでに目標の長さ以上の場合はそのまま返されます。
console.log("Hello".padStart(3, "0")); // 『Hello』と出力されます。
// repeat で文字列を繰り返します。
console.log("Ha".repeat(3)); // 『HaHaHa』と出力されます。
console.log("-".repeat(20)); // 『--------------------』と出力されます。
// repeat に0を渡すと空文字が返されます。
console.log("abc".repeat(0)); // 空文字『』が出力されます。
実行結果
上記のコードを実行すると、コンソールには以下が出力されます。
"005" // 3桁のゼロ埋め "2026-03-07" // 日付のゼロ埋めフォーマット "Name......Kuu" // padEnd で右側に揃え "Price.....500" // padEnd で右側に揃え "Hello" // 目標の長さ以下のため変化なし "HaHaHa" // 3回繰り返し "--------------------" // 区切り線の生成 "" // 0回繰り返しで空文字
概要
『文字列.padStart()』と『文字列.padEnd()』は文字列を指定した長さになるまで先頭や末尾に文字を埋め込むメソッドです。第2引数を省略するとスペースで埋められます。最もよく使われる場面は数値のゼロ埋めで、日付や時刻のフォーマット整形で重宝します。
『文字列.repeat()』は文字列を指定した回数だけ繰り返すメソッドです。区切り線の生成やインデント文字列の作成など、同じ文字列を複数回並べたい場面で使えます。引数に0を渡すと空文字が返され、負の数やInfinityを渡すとエラーが発生します。
いずれのメソッドも元の文字列は変更せず、新しい文字列を返します。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。