--- title: Math.log2() slug: Web/JavaScript/Referencia/Objetos_globales/Math/log2 translation_of: Web/JavaScript/Reference/Global_Objects/Math/log2 ---
La función Math.log2()
retorna el logaritmo base 2 de un número, esto es
Math.log2(x)
x
El logaritmo base 2 del número usado como parámetro. Si el número es negativo, {{jsxref("NaN")}} será retornado.
Si el valor de x
es mejor a 0, el valor de retorno es siempre {{jsxref("NaN")}}.
Debido a que log2()
es una función estática de Math
, siempre debe ser usado como Math.log2()
, en lugar de ser usado como un método del objeto Math
(Math
no es un constructor).
Esta función es equivalente a Math.log(x) / Math.log(2). Para log2(e) use la constante {{jsxref("Math.LOG2E")}} que es 1 / {{jsxref("Math.LN2")}}.
Math.log2()
Math.log2(3); // 1.584962500721156 Math.log2(2); // 1 Math.log2(1); // 0 Math.log2(0); // -Infinity Math.log2(-2); // NaN Math.log2(1024); // 10
This Polyfill emulates the Math.log2
function. Note that it returns imprecise values on some inputs (like 1 << 29), wrap into {{jsxref("Math.round()")}} if working with bit masks.
Math.log2 = Math.log2 || function(x) { return Math.log(x) * Math.LOG2E; };
Specification | Status | Comment |
---|---|---|
{{SpecName('ES2015', '#sec-math.log2', 'Math.log2')}} | {{Spec2('ES2015')}} | Initial definition. |
{{SpecName('ESDraft', '#sec-math.log2', 'Math.log2')}} | {{Spec2('ESDraft')}} |
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
{{Compat("javascript.builtins.Math.log2")}}