Javascript数学三角方法返回错误的结果。尝试
alert(Math.sin(Math.PI));
它不返回0。
可能问题出在javascript的小数精度上。有什么工作可以得到正确的结果吗?
不过,它非常非常接近于零。(~10^-16)
并且CCD_ 1确实返回CCD_。
这只是处理浮点运算时必须小心的一件事。舍入错误到处都是。
您可以使用
Math.sin(Math.PI).toFixed(3) // "0.000"
示例:
const cos = (a) => Math.cos(Math.PI * a / 180);
cos(90) // 6.123233995736766e-17
然后你可以使用.toFixed()
cos(90).toFixed(3) // "0.000"
备注
.toFixed()
返回字符串,因此可以使用parseFloat()
将其解析为浮动
parseFloat(cos(90).toFixed(3)) // 0.000