繁体   English   中英

JavaScript浮点精度问题

[英]JavaScript floating point precision issue

我遇到浮点精度问题,有人知道为什么会这样吗? 为什么余弦函数会受到影响,而正弦函数却没有受到影响。

Math.sin(90 * Math.PI / 180);
// returned: 1, expected: 1

1 - Math.sin(90 * Math.PI / 180);
// returned: 0, expected: 0


Math.cos(90 * Math.PI / 180);
// returned: 6.123233995736766e-17, expected: 0

1 - Math.cos(90 * Math.PI / 180);
// returned: 0.9999999999999999, expected: 1

对此的规范答案是每位计算机科学家都应了解的浮点运算法则

稍加尝试,您将发现正弦函数的“意外”结果示例。

例如Math.sin(180 * Math.PI / 180);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM