【JavaScript】数値を16進数表記の文字列に変換

Development

いろいろな言語でプログラムを開発していると、単純なコードでも忘れてしまうことがあります。そのため、数値を16進数の文字列へ変換する方法を覚書として残しておきます。

数値から16進文字列への変換

var i = 15;
var s=i.toString(16)   ;
// sは"f"になります。
var i = 255;
var s=i.toString(16) ;
// sは"ff"になります。

数値から16進文字列への変換。(ゼロ埋め)

//【内容】数値を16進数表記の文字列に変換する。
//【引数】d=数値
//    s=フォーマット情報 "00"/"0000"
function toHex(num,fm) {
  //数値を16進数表記の文字列に変換
  var s=num.toString(16);
  //引数チェック
  if(fm==undefined) return s;
  //16進数表記の文字列に桁数を求める
  var dLen=s.toString(16).length;
  //ゼロ埋め
  s= Array(fm.length-dLen+1).join('0')+s;
  return  s;
}

s0=toHex(15);s0には”f”は代入されます。
s1=toHex(15,"00");s1には”0f”は代入されます。
s2=toHex(255,"00");s2には”ff”は代入されます。
s3=toHex(255,"0000");s3には”00ff”は代入されます。
s4=toHex(255,"000000");s4には”0000ff”は代入されます。

コメント