Math.pow和Infinity

时间:2012-03-08 09:37:47

标签: javascript math infinity

数学中有七种不确定的形式。他们中的大多数在JavaScript中返回NaN。但当我尝试:

Math.pow( 0, 0 )

Math.pow( Infinity, 0 )

它返回:

1

这是某种错误吗?

3 个答案:

答案 0 :(得分:5)

不,因为零的力量是一个。

这不仅更容易实现,而且在数学上是正确的(一些数学家说pow(0, 0)未定义,但一般约定是pow(x, 0) == 1任何 x)。

最重要的是它在规范中(从primvdb官方窃取链接):http://es5.github.com/#x15.8.2.13

答案 1 :(得分:5)

这就是specification所说的,所以这不是一个错误:

  

2。如果y为+0,则结果为1,即使x为NaN。

答案 2 :(得分:1)

不,这不是一个错误。此行为符合ECMA definition of Javascript