Why not login to Qiita and try out its useful features?

We'll deliver articles that match you.

You can read useful information later.

0
0

0埋めしてくれる関数、その名もpadStart()

Posted at

コードを書いていて、文字列を指定の文字列で埋めて指定の文字数にしたいときってありますよね。
例)1月 ⇒01月
私は独自で日付の0埋め用関数を定義したのですが、そんなことをしなくてもJavaScriptに便利なメソッドが用意されていましたのでご紹介します。

🎃 padStart()

前述したように、文字列が指定の長さになるようにうまいことやってくれる便利なヤツです。
引数を1つまたは2つとって、こんな風に使います。

const str1 = '2';
const padStartResult = str1.padStart(2, '0')

console.log(padStartResult); // 02

第1引数:指定したい文字列の長さ
第2引数:第1引数で指定した長さになるまで繰り返したい文字列。省略可。(日本語がへたくそ🤔)

第1引数の長さが変換したい文字列の長さより短い場合は、変換対象の文字列をそのまま返してくれます。

const str1 = '200';
const padStartResult = str1.padStart(2, '0')

console.log(padStartResult); // 200

第2引数が省略可とのことですが、埋めたい文字列を指定しなかったらどうなるのでしょう...?

const str1 = '2';
const padStartResult = str1.padStart(4)

console.log(padStartResult); // "   2"

このように空文字で埋めてくれました。

🍜 〆

業務でコードレビューをいただいた際にこのメソッドを知りました。
こんなに便利なものがあるなんて✨
ひとつ注意なのが、変換対象は「文字列」型ということです。
「数値」等他の型には使えませんのでご注意を、、、👻

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
erlangqingbao

@erlangqingbao(QiiJiro_)

とある片田舎のIT企業で働くエンジニア達の独り言を投稿していきます。

Comments

diywmk9
@diywmk9

ひとつ注意なのが、変換対象は「文字列」型ということです。
「数値」等他の型には使えませんのでご注意を、、、👻

文字列型に変換しておけばいいだけですので大きな問題は無いかと思います。

const zeroPadding = (n, k) => `${n}`.padStart(k, '0');

console.log(zeroPadding(12, 3)); // 012
console.log(zeroPadding([3], 2)); // 03
console.log(zeroPadding('23', 4)); // 0023
0

Let's comment your feelings that are more than good

Being held Article posting campaign

0
0

Login to continue?

Login or Sign up with social account

Login or Sign up with your email address