如何在javascript中使用Math.sin()来获得正确的答案?

时间:2014-03-30 14:34:37

标签: javascript math

当我使用Math.sin(90)在javascript中计算90度的正弦时,它返回0.8939966636005565,但是sin(90)是1.有没有办法解决这个问题?我需要任何角度的准确值。

<!DOCTYPE html>
<html>
<body>
    <p id="demo">Click the button calculate value of 90 degrees.</p>
    <button onclick="myFunction()">Try it</button>
<script>
function myFunction(){
    document.getElementById("demo").innerHTML=Math.sin(90);
}
</script>

2 个答案:

答案 0 :(得分:14)

Math.sin期望输入为弧度,但您期望得到90度的结果。将它转换为弧度,就像这样

console.log(Math.sin(90 * Math.PI / 180.0));
# 1

根据维基百科的Radian to Degree conversion formula

Angle in Radian = Angle in Degree * Math.PI / 180

答案 1 :(得分:5)

Javascript中的sin函数需要弧度,而不是度。您需要将90转换为弧度才能得到正确的答案:

Math.sin(90 * (Math.PI / 180))