JavaScriptテックラボ

JavaScriptで数値の桁数を合わせる(ゼロパディング)方法

ゼロパディング(zero padding)とは、書式の桁数に満たない数値の場合に、足りない桁数だけ 0 を追加して桁数を合わせることです。
たとえば3桁で1を表す場合、足りない2桁をゼロで埋めて 001 と表記します。

JavaScriptでは、String.slice() を使って桁数を合わせます。
たとえば変数 num の値の書式を3桁にしたい場合、下記のようになります。

var num = 1;
var ret = ( '000' + num ).slice( -3 );
console.log(ret);
出力結果
001

希望の桁数だけ '000' の0を増やし、その桁数を solice( -3 ) として指定します。
2桁にしたい場合は下記になります。

var ret = ( '00' + num ).slice( -2 );

値が想定する桁数を超えたときは上記の桁が失われるので注意ください。

var num = 1234;
var ret = ( '000' + num ).slice( -3 );
console.log(ret);
出力結果
234

汎用性を持たせて関数にする場合は下記のようになります。

// NUM=値 LEN=桁数
function zeroPadding(NUM, LEN){
	return ( Array(LEN).join('0') + NUM ).slice( -LEN );
}

// zeroPadding
console.log( zeroPadding(1, 3) );

関連記事