JavaScript三角函数

时间:2012-08-21 05:45:13

标签: javascript math trigonometry

我正在处理一些JavaScript,而且我遇到了数学问题:

var p1 = {x:0,y:0}, p2 = {x:1,y:1};
return Math.sin(45) * Math.sqrt((Math.pow(p2.x-p1.x,2) + Math.pow(p2.y-p1.y,2)));

返回1.203359304667218

但是当我在计算器上进行相同的计算时,它会返回1,这就是我希望这个计算返回的结果。谁能解释一下呢?

3 个答案:

答案 0 :(得分:5)

你用计算器做什么模式?

弧度或度数? 猜猜这可能是你的“问题”,可以轻松解决: - )

答案 1 :(得分:1)

var degreesToRadians = function (d) {
  return Math.PI * d / 180; 
}

答案 2 :(得分:1)

这些总是很有用,可能会避免将来出现混淆:

function sind(d) {
  return Math.sin(Math.PI*d/180.0); 
}

function cosd(d) {
  return Math.cos(Math.PI*d/180.0); 
}

function tand(d) {
  return Math.tan(Math.PI*d/180.0); 
}