JavaScript おれおれ Advent Calendar 2011 – 1日目
例えば時刻を表示する事を考えます。
var now = new Date();
var timeText = [
now.getHours(),
now.getMinutes(),
now.getSeconds(),
now.getMilliseconds()
].join(':');
console.log(timeText);
結果はこう
17:2:27:87
ですが、本当はこう
17:02:27:0087
したいですよね。この先頭をゼロ0で埋めるってのがゼロフィルです。
やり方はいろいろあるんですが、 .slice()に負数を与えるのが綺麗で良いです。
var now = new Date();
var timeText = [
("0" + now.getHours()).slice(-2),
("0" + now.getMinutes()).slice(-2),
("0" + now.getSeconds()).slice(-2),
("000" + now.getMilliseconds()).slice(-4)
].join(':');
console.log(timeText);
.slice()に負数を与えると、後ろから取得できるわけです。
"12345".slice(-3) // => "345"