Math.log2()

La funci贸n Math.log2() retorna el logaritmo base 2 de un n煤mero, esto es

x>0,Math.log2(x)=log2(x)=the uniqueysuch that2y=x\forall x > 0, \mathtt{\operatorname{Math.log2}(x)} = \log_2(x) = \text{the unique} \; y \; \text{such that} \; 2^y = x

Syntax

Math.log2(x)

Par谩metros

x
Un n煤mero.

Valor de retorno

El logaritmo base 2 del n煤mero usado como par谩metro. Si el n煤mero es negativo, NaN ser谩 retornado.

Descripci贸n

Si el valor de x es mejor a 0, el valor de retorno es siempre 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 Math.LOG2E que es 1 / Math.LN2.  

Ejemplos

Usando 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

Polyfill

This Polyfill emulates the Math.log2 function. Note that it returns imprecise values on some inputs (like 1 << 29), wrap into Math.round() if working with bit masks.

Math.log2 = Math.log2 || function(x) {
  return Math.log(x) * Math.LOG2E;
};

Specifications

Browser compatibility

BCD tables only load in the browser

See also