Documentación offline JavaScript main

Math.log2()

main Documentación oficial Licencia CC-BY-SA-2.5Descargado el 2026-08-02

En esta página

The Math.log2() static method returns the base 2 logarithm of a number. That is

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

{{InteractiveExample("JavaScript Demo: Math.log2()")}}

```js interactive-example 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

## Syntax

```js-nolint
Math.log2(x)

Parameters#

  • x
  • : A number greater than or equal to 0.

Return value#

The base 2 logarithm of x. If x < 0, returns {{jsxref("NaN")}}.

Description#

Because log2() is a static method of Math, you always use it as Math.log2(), rather than as a method of a Math object you created (Math is not a constructor).

This function is the equivalent of Math.log(x) / Math.log(2). For log2(e), use the constant {{jsxref("Math.LOG2E")}}, which is 1 / {{jsxref("Math.LN2")}}.

Examples#

Using Math.log2()#

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

Specifications#

{{Specifications}}

Browser compatibility#

{{Compat}}

See also#

  • Polyfill of Math.log2 in core-js
  • {{jsxref("Math.exp()")}}
  • {{jsxref("Math.log()")}}
  • {{jsxref("Math.log10()")}}
  • {{jsxref("Math.log1p()")}}
  • {{jsxref("Math.pow()")}}