alert(Math.cos(Math.PI/2));
为什么结果不精确为零?这是不准确的,还是一些实现错误?
最佳答案
Math.PI/2
是 pi/2
实际值的近似值。取该近似值的精确余弦值不会产生零。您获得的值是该精确值的近似值,最高可达基础 float 据类型的精度。
使用一些任意精度库,您可以评估 pi/2
之间的差异以 double 和精确值表示
0.0000000000000000612323399573676588613032966137500529104874722961...
由于接近零点的余弦斜率为 1,因此您会期望 pi/2
的近似余弦大约等于这个差值,确实如此。
关于javascript - Math.cos 不准确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24436628/