お茶漬けぶろぐ

JavaScriptで数値をn進法で表現する

自分用メモ。しょぼい話。
数値を2進法とか16進法とかで表現したいときにべんり。(冪乗を効率的に計算する場合に、指数を2進法で表現したくなったりするのだ)

const i = 256;
console.log(i.toString(2)); // 100000000
console.log(i.toString(16)); // 100
const j = -5;
console.log(j.toString(2)); // -101

Number.prototype.toString() - JavaScript | MDNによると、引数は基数を指定すれば良く、2〜36の整数が許容されるらしい。
気をつけるべきは、負数を2進法で表現しようとした場合は、補数表現ではなく、先頭に-符号がついた正の表現が返される(-5は補数表現するなら8ビットの場合は11111011とかになるはず)。それと、戻りは当然ながらstring(typeof(i.toString(2))stringになる)なので、場合によっては気をつけるべきかも?

< ArchLinuxの上のQtアプリケーションでfcitx-mozcが有効にならんやつ

pacmanのプログレスバーをパックマンにする >