Math.log2()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Math.log2() は静的メソッドで、数値の 2 を底とした対数を返します。

x>0,𝙼𝚊𝚝𝚑.𝚕𝚘𝚐𝟸(𝚡)=log2(x)=the unique y such that 2y=x\forall x > 0,\;\mathtt{\operatorname{Math.log2}(x)} = \log_2(x) = \text{the unique } y \text{ such that } 2^y = x

試してみましょう

console.log(Math.log2(3));
// Expected output: 1.584962500721156

console.log(Math.log2(2));
// Expected output: 1

console.log(Math.log2(1));
// Expected output: 0

console.log(Math.log2(0));
// Expected output: -Infinity

構文

js
Math.log2(x)

引数

x

0 以上の数値です。

返値

x の 2 を底とした対数です。 x < 0 であった場合、 NaN が返されます。

解説

log2()Math の静的メソッドであるため、生成した Math オブジェクトのメソッドとしてではなく、常に Math.log2() として使用するようにしてください (Math はコンストラクターではありません)。

この関数は Math.log(x) / Math.log(2) と同等です。 log2(e) には定数 Math.LOG2E を使用してください(これは 1 / Math.LN2 です)。

Math.log2() の使用

js
Math.log2(-2); // NaN
Math.log2(-0); // -Infinity
Math.log2(0); // -Infinity
Math.log2(1); // 0
Math.log2(2); // 1
Math.log2(3); // 1.584962500721156
Math.log2(1024); // 10
Math.log2(Infinity); // Infinity

仕様書

Specification
ECMAScript® 2025 Language Specification
# sec-math.log2

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
log2

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

関連情報