数学には7つの不定形があります。それらのほとんどはJavaScriptでNaNを返します。しかし、私が試してみると:
Math.pow( 0, 0 )
また
Math.pow( Infinity, 0 )
それは戻ります:
1
これはある種のバグですか?
数学には7つの不定形があります。それらのほとんどはJavaScriptでNaNを返します。しかし、私が試してみると:
Math.pow( 0, 0 )
また
Math.pow( Infinity, 0 )
それは戻ります:
1
これはある種のバグですか?
いいえ、ゼロの累乗はすべて1であるためです。
これは実装が簡単であるだけでなく、数学的にも正しいです(一部の数学者pow(0, 0)は未定義だと言いますが、一般的な慣習では任意のxを使用します)pow(x, 0) == 1。
その上、それは仕様に含まれています(primvdbから公式に盗まれたリンク):http ://es5.github.com/#x15.8.2.13
それが仕様の内容なので、バグではありません。
2.
yが+0の場合、xがNaNであっても、結果は1になります。
いいえ、バグではありません。この動作は、JavascriptのECMA定義に準拠しています。