JavaScript:「2進数」⇔「10進数」相互変換

JavaScriptで2進数を10進数へ、10進数を2進数へ変換する方法を紹介します。

2進数から10進数へ変換

2進数から10進数へ変換する場合はparseInt関数を使用します。 第1引数に変換したい2進数の文字列を指定し、 第2引数に基数「2」を指定します。

parseInt("111", 2)   // 7
parseInt("1100", 2)  // 15
parseInt("-111", 2); // -7

2進数の場合、第1引数の頭に2進数を意味する「0b」を付けると parseIntは正常に機能しません。
なので「0b」は付けずにparseInt関数を使用してください。

parseInt("0b111", 2)  // 0(機能しない)

10進数から2進数へ変換

10進数から2進数へ変換する場合は、 NumberオブジェクトのtoStringを使用します。 引数に基数「2」を指定します。

let n = 7;
console.log(n.toString(2)); // 111

n = 12
console.log(n.toString(2)); // 1100

n = -7
console.log(n.toString(2)); // -111
JavaScript入門