【入門編】 文字列のパディング(padStart, padEnd) – JavaScript実践ガイド

やあ。JavaScriptの世界へようこそ。
コードを書いていると、「あとちょっとだけ、見た目を整えたいな」と思う瞬間があるよね。

例えば、時計の表示で「9時5分」を「09:05」と表示させたいとき。あるいは、会員番号の桁数を揃えてスッキリ見せたいとき。そんな「あと少しの調整」を魔法のように解決してくれるのが、今回紹介する `padStart` と `padEnd` というメソッドだ。

難しく考える必要はないよ。これは例えるなら「足りない分を、好きなキャラクタで埋めてあげる調整役」なんだ。

—

1. 文字列の「隙間」を埋めるという考え方

プログラミングをしていると、データがバラバラな長さでやってくることは日常茶飯事だ。
「9」という数字が欲しいのに、なぜか「09」と表示させなきゃいけない。そんなとき、昔のエンジニアは「もし数字が1桁なら、前に0を足して…」なんていう長い条件分岐を書いていたものだけど、今はもうそんな苦労はいらない。

`padStart` と `padEnd` を使えば、たった1行で解決できるんだ。

基本の仕組み

  • `padStart(目標の長さ, 埋める文字)`: 文字列の先頭(左側)を埋める。
  • `padEnd(目標の長さ, 埋める文字)`: 文字列の末尾(右側)を埋める。

これだけ。シンプルだろう?

—

2. 実践:時計の表示を綺麗にしてみよう

じゃあ、実際にコードを見てみよう。まずは「9」という数字を「09」に変える例だ。

// 9時5分というデータがあるとする
let hour = “9”;
let minute = “5”;

// 「2桁になるまで、足りない分は左側に’0’を埋めてね」という命令
let formattedHour = hour.padStart(2, ‘0’);
let formattedMinute = minute.padStart(2, ‘0’);

console.log(`${formattedHour}:${formattedMinute}`);
// 出力結果: “09:05”
// おお!これだけで急にプロっぽい表示になったよね。

もしこれが「12時30分」なら、`padStart` は「すでに2桁あるから何もしないでおこう」と気を利かせてくれる。賢いと思わないかい?

—

3. `padEnd` はどんな時に使うの?

`padEnd` は、後ろに文字を足すから、主に「視覚的な整列」に使われることが多いよ。
例えば、領収書の明細や、ゲームのスコアボードなんかで「名前のあとにドットを並べて価格を表示する」ようなシーンだ。

let item = “りんご”;
let price = “150円”;

// 「全体で10文字分になるまで、右側に’.’を足してね」という指定
let display = item.padEnd(10, ‘.’);

console.log(display + price);
// 出力結果: “りんご…….150円”

こうやって視覚的な「余白」をコントロールできるようになると、UIのデザインがグッと引き締まるんだ。

—

4. 現場のアーキテクトからのワンポイント・アドバイス

ここで一つだけ、初心者の人がよくハマるポイントを伝えておくね。

「数値のままでは使えない」ということなんだ。
`padStart` はあくまで「文字列」を操作するメソッドだ。だから、もし数字の `9` を扱っているなら、一度 `String(9)` や `9.toString()` で文字に変換してから使ってあげてほしい。

let num = 9;

// エラーになる例: num.padStart(2, ‘0’) は動かない!
// 正解:
let fixedNum = String(num).padStart(2, ‘0’);

最初は忘れてエラーが出ちゃうかもしれない。でも大丈夫、それはみんな通る道だよ。エラーが出たら「あ、文字列に直すのを忘れてたな」と思い出せばいいだけさ。

—

最後に:完璧を目指さなくていい

プログラミングは、最初から完璧なコードを書く必要なんてないんだ。
最初は泥臭く、`if`文をたくさん書いていたとしても、あとからこうして `padStart` のような便利なメソッドを知って、コードをスリムにしていく。その繰り返しで、君のスキルは確実に磨かれていく。

「文字列を整える」という小さな工夫が、ユーザーにとっては「見やすい!使いやすい!」という大きな体験に繋がる。ぜひ、君のプロジェクトのあちこちで、この魔法のメソッドを試してみてほしい。

また困ったことがあったら、いつでも聞きに来てね。一緒にコードを育てていこう!

コメント

タイトルとURLをコピーしました