JavaScript: 8進数の数値を計算する

JavaScriptで8進数の数値を計算する方法を紹介します。

8進数で表記した数値をそのまま四則演算子を使って計算できます。 ただし結果は10進数で取得できるため、 8進数で表示したい場合はNumberオブジェクトのtoStringメソッドを使って 8進数に変換する必要があります。

次のサンプルコードでは、 8進数で表記した数値同士を足し算して、 結果を表示しています。

let a = 0o10; // 10進数では 8
let b = 0o7;  // 10進数では 7

let c = a + b;

console.log(c);        // 15(10進数)

console.log(c.toString(8));  // 17((8進数)

次は掛け算を行ってみます。

let a = 0o10; // 10進数では 8
let b = 0o7;  // 10進数では 7

let c = a * b;

console.log(c);        // 56(10進数)

console.log(c.toString(8));  // 70(8進数)

8進数 + 10進数は?

8進数と10進数を足し算してみます。

let a = 0o10; // 10進数では 8
let b = 9;    // 10進数

let c = a + b;

console.log(c);             // 17(10進数)

console.log(c.toString(8)); // 21(8進数)

8進数と10進数でも計算できています。

JavaScript入門