0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【JavaScript】指定の長さで0埋めした文字(数値)を返す

Last updated at Posted at 2021-02-09

####トピックについて

  • 数字(文字)の左側を0埋めするときに利用する。

####ソースコード・・・
@sdkei様のコメントからソースコードを修正しました(2021/2/12)

  /**
   * numの値をlengthで指定された長さに調整する。足りない場合は左側を0で埋める。
   * @param {*}      num    : 0埋めする数字/文字
   * @param {number} length : 0埋めしたい文字列の長さ(EX:月/日/時/分/秒の場合は2)
   */
  fucntion zeroPadding(num, length){
    let str = num.toString();
    for(let i = str.length; i < length; i++){
      str = '0' + str;
    }
    return str;
  }
  const zeroPadding = ((num, length) => {
    let str = num.toString();
    for(let i = str.length; i < length; i++){
      str = '0' + str;
    }
    return str;
  });

●当初のソースコード
~~/**

  • numの値をlengthで指定された長さに調整する。足りない場合は左側を0で埋める。
  • @param {*} num : 0埋めする数字/文字
  • @param {number} length : 0埋めしたい文字列の長さ(EX:月/日/時/分/秒の場合は2)
    */
    fucntion zeroPadding(num, length){
    let zeroStr = '';
    for(let i = 0; i < length; i++){
    zeroStr += '0';
    }
    return (zeroStr + num).slice(-length);
    }~~

const zeroPadding = ((num, length) => {
let zeroStr = '';
for(let i = 0; i < length; i++){
zeroStr += '0';
}
return (zeroStr + num).slice(-length);
});

####メモ
● IEでは利用できないが、String(num).padStart(文字列の長さ,"0")1とすることでも指定文字埋めが可能。
  ↑の関数をkintoneの全体jsの名前空間に書いて利用していた。
  IE使っているわけじゃないから、こっちの方が簡潔で良い気がしてきた。
  仮にIEで実装しなければいけない場合は↑を使うことにする。
● padStartのお友達padEnd右側を指定文字埋めすることができる。

  1. ES2017以降で利用可能

0
0
2

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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?