Math.log2()
function returns the base 2 logarithm of a number, that is
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Math.log2(x)
x
A number.
The base 2 logarithm of the given number. If the number is negative,
NaN
被返回。
If the value of
x
is less than 0, the return value is always
NaN
.
因为
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
Math.LOG2E
which is 1 /
Math.LN2
.
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.
if (!Math.log2) Math.log2 = function(x) {
return Math.log(x) * Math.LOG2E;
};
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
| 规范 |
|---|
|
ECMAScript (ECMA-262)
The definition of 'Math.log2' in that specification. |
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.
更新 GitHub 上的兼容性数据| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
log2
|
Chrome 38 | Edge 12 | Firefox 25 | IE No | Opera 25 | Safari 8 | WebView Android 38 | Chrome Android 38 | Firefox Android 25 | Opera Android 25 | Safari iOS 8 | Samsung Internet Android 3.0 | nodejs 0.12 |
完整支持
不支持
Math
Math.abs()
Math.acos()
Math.acosh()
Math.asin()
Math.asinh()
Math.atan()
Math.atan2()
Math.atanh()
Math.cbrt()
Math.ceil()
Math.clz32()
Math.cos()
Math.cosh()
Math.exp()
Math.expm1()
Math.floor()
Math.fround()
Math.hypot()
Math.imul()
Math.log()
Math.log10()
Math.log1p()
Math.log2()
Math.max()
Math.min()
Math.pow()
Math.random()
Math.round()
Math.sign()
Math.sin()
Math.sinh()
Math.sqrt()
Math.tan()
Math.tanh()
Math.trunc()
Object
Object.prototype.__defineGetter__()
Object.prototype.__defineSetter__()
Object.prototype.__lookupGetter__()
Object.prototype.__lookupSetter__()
Object.prototype.hasOwnProperty()
Object.prototype.isPrototypeOf()
Object.prototype.propertyIsEnumerable()
Object.prototype.toLocaleString()
Object.prototype.toSource()
Object.prototype.toString()
Object.prototype.valueOf()
Object.setPrototypeOf()