JavaScript で文字列を左詰めしたい場合、`padStart()`メソッドを使うと簡単に実装できます。この記事では、`padStart()`の基本的な使い方から実践的な例まで、わかりやすく解説します。
padStart()メソッドの基本構文
文字列.padStart(目標の長さ, '埋める文字');基本的な使い方
const num = '5';
console.log(num.padStart(2, '0')); // "05"
const text = 'Hello';
console.log(text.padStart(10, '*')); // "*****Hello"実践的な使用例
1. 数値の0埋め
// 1桁の数字を2桁に
const num = '7';
console.log(num.padStart(2, '0')); // "07"
// 数値を文字列に変換して使用
const number = 42;
console.log(number.toString().padStart(4, '0')); // "0042"2. 日付のフォーマット
const month = '6';
const day = '1';
const formattedDate = `${month.padStart(2, '0')}/${day.padStart(2, '0')}`;
console.log(formattedDate); // "06/01"3. クレジットカード番号のマスク
const cardNumber = '1234567890123456';
const last4Digits = cardNumber.slice(-4);
const maskedNumber = last4Digits.padStart(16, '*');
console.log(maskedNumber); // "************3456"注意点
1. 文字列の長さが目標の長さ以上の場合、そのまま返されます
const text = 'Hello';
console.log(text.padStart(3, '*')); // "Hello"2. 埋める文字を指定しない場合、スペースが使用されます
const text = 'Hi';
console.log(text.padStart(4)); // " Hi"3. 数値に直接使用することはできません
// エラーになる
const num = 5;
console.log(num.padStart(2, '0')); // TypeError
// 正しい使い方
console.log(String(num).padStart(2, '0')); // "05"ブラウザ対応状況
`padStart()`メソッドは主要なモダンブラウザで広くサポートされています:
- Chrome 57以降
- Firefox 48以降
- Safari 10以降
- Edge 15以降
まとめ
`padStart()`メソッドは、文字列の左側を特定の文字で埋めるシンプルで便利な機能です。特に:
- 数値の0埋め
- 日付のフォーマット
- データの整形
といった用途で活用できます。ES2017で追加された比較的新しい機能ですが、現在では広くサポートされており、安心して使用できます。