サードパーティのライブラリを使用せずに、JavaScript で '1' を '0001' に変換するにはどうすればよいでしょうか。私は、spritf を使用して PHP でこれを実行しました。$time = sprintf('%04.0f',$time_arr[$i]);
ベストアンサー1
これはちょっとした巧妙なトリックです (以前 SO で見たことがあると思います):
var str = "" + 1
var pad = "0000"
var ans = pad.substring(0, pad.length - str.length) + str
JavaScript は、substring の 2 番目の引数が負の場合、一部の言語よりも寛容であるため、「正しくオーバーフローします」(または、見方によっては誤ってオーバーフローします)。
つまり、上記では次のようになります。
- 1 -> "0001"
- 12345 -> 「12345」
負の数のサポートは練習として残しておきます ;-)