JavaScript参考手册
Math
Math.log2
Math.log2()
函数返回一个数字以 2 为底的对数.
∀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
语法
Math.log2(x)
参数
x
一个数值。
返回值
给定数字的基数2的对数。如果数字是负数,则返回NaN
。
描述
如果传入的参数小于 0, 则返回 NaN
.
因为log2()
是Math
的一个静态方法,用作Math.log2()
,而不是你创建的Math
对象的方法(Math
不是一个构造函数)。
这个函数相当于Math.log(x)/ Math.log(2)。对于log2(e)使用Math.LOG2E
1 / 的常数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
Polyfill
这个Polyfill模拟Math.log2
功能。请注意,它在某些输入(比如1 << 29)上返回不精确的值,Math.round()
如果使用位掩码,则换行。
Math.log2 = Math.log2 || function(x) {
return Math.log(x) * Math.LOG2E;
};
规范
Specification |
Status |
Comment |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'Math.log2' in that specification. |
Standard |
Initial definition. |
ECMAScript Latest Draft (ECMA-262)The definition of 'Math.log2' in that specification. |
Draft |
|
浏览器兼容性
Feature |
Chrome |
Firefox |
Edge |
Internet Explorer |
Opera |
Safari |
---|---|---|---|---|---|---|
Basic Support |
38 |
25 |
(Yes) |
(No) |
25 |
7.1 |
Feature |
Android |
Chrome for Android |
Edge mobile |
Firefox for Android |
IE mobile |
Opera Android |
iOS Safari |
---|---|---|---|---|---|---|---|
Basic Support |
(Yes) |
(Yes) |
(Yes) |
25 |
(No) |
(Yes) |
8 |
Math相关
JavaScript 是一种高级编程语言,通过解释执行,是一门动态类型,面向对象(基于原型)的解释型语言。它已经由ECMA(欧洲电脑制造商协会)通过 ECMAScript 实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器( Chrome、IE、FireFox、Safari、Opera )支持。JavaScript 是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程。它提供语法来操控文本、数组、日期以及正则表达式等,不支持 I/O,比如网络