首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么Math.log(0)会在JavaScript中返回-Infinity?

为什么Math.log(0)会在JavaScript中返回-Infinity?
EN

Stack Overflow用户
提问于 2018-09-30 00:47:32
回答 2查看 1.1K关注 0票数 -3

当我的Math.log值为零时,它给出的是-Infinity值。为什么它会给出负的无穷大值?为什么只给予-Infinity,而不是给予+无穷大。为什么只有0值给出了这个结果。

console.log(Math.log(0))

EN

回答 2

Stack Overflow用户

发布于 2018-09-30 00:55:30

从根本上说,因为that's how it's specified

20.2.2.20 Math.log ( x )

返回x的自然对数的依赖于实现的近似值。

如果x小于0,则结果为NaN.

  • If,如果x小于0,则结果为NaN。如果x小于0,则结果为NaN。如果x小于0,则结果为

x is +0或-0,结果为-∞.

  • If x is 1,结果为+0。

  • If x is +∞,result is +∞。

(我的重点)

但更重要的是,log(x) as x接近0 decreases without bound。所以对于规范来说,-Infinity似乎是一个合理的选择。

票数 3
EN

Stack Overflow用户

发布于 2018-09-30 00:54:33

,因为日志0是未定义的,所以他们以这种方式实现了它。

console.log(无穷大);/*无限*/

Console.log(无穷大+ 1);/*无限*/

console.log(Math.pow(10,1000));/*无穷*/

console.log(Math.log(0));/* -Infinity */

console.log(1 /无穷大);/* 0 */

规格:https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Infinity#Beispiele

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52570477

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档