LOG

JavaScriptで基数変換

2進数→n進数

// 10進数へ変換
parseInt("1010",2); // 10

// 16進数へ変換  paserFloatとか出来ると思うじゃん?
parseInt("1010",2).toString(16)
// a

parseIntの第2引数は2〜36の基数を与える。
第2引数を入れなかった場合実装によって挙動が変わるので注意

10進数→n進数

// 2進数へ変換
(10).toString(2) // "1010"

// 16進数へ変換
(10).toString(16) // "a"

16進数→n進数

// 2進数へ変換
parseInt("a",16).toString(2); // 1010

// 10進数へ変換
parseInt("a",16); // 10
// もしくは
parseInt("0xa",16); // 10

補足

8進数は先頭に0を付け、16進数は0xを付けることで進数を区別する