2011-01-17 34 views
12

tan (5,3) = 0,09276719520463tan trong javascript

nhưng trong javascript:

Math.tan (5,3) = -1,50127339580693

làm thế nào để tính toán Math.tan (cái gì) trong javascript trong chế độ deg?

+2

Về mặt kỹ thuật tan (5.3) là * không * 0,092767 ...; tan (5.3 °) là 0.092767 ... - nếu bạn đang sử dụng độ (hoặc người tốt nghiệp), bạn phải chỉ định chúng. –

Trả lời

27

Thay vì viết một hàm wrapper cho nó (và tham gia một buổi biểu diễn hit), bạn có thể nhân bằng các hằng:

var deg2rad = Math.PI/180; 
var rad2deg = 180/Math.PI; 

Và sau đó sử dụng chúng như sau:

var ratio = Math.tan(myDegrees * deg2rad); 
var degrees = Math.atan(ratio) * rad2deg; 

Giao dịch JavaScript chỉ bằng radian, vừa làm đối số vừa là giá trị trả lại. Bạn có thể chuyển đổi chúng khi bạn thấy phù hợp.

Ngoài ra, lưu ý rằng nếu bạn đang cố gắng để tìm ra độ quay cho tọa độ xy, bạn nên sử dụng Math.atan2 để JavaScript có thể nói mà Quadrant điểm mấu chốt là ở và cung cấp cho bạn những góc chính xác:

[ Math.atan(1/ 1), Math.atan2(1, 1) ]; // [ 45, 45 ] 
[ Math.atan(1/-1), Math.atan2(1,-1) ]; // [ -45, 135 ] 
[ Math.atan(-1/ 1), Math.atan2(-1, 1) ]; // [ -45, -45 ] 
[ Math.atan(-1/-1), Math.atan2(-1,-1) ]; // [ 45,-135 ] 
+0

+1 cho 'atan2', chỉ là những gì tôi đang tìm kiếm, cảm ơn! – thejh

4

Rất khó tìm!

Để hoàn thành cơ bản triangle math trong JavaScript, sử dụng ..

Math.atan(opposite/adjacent) * 180/Math.PI 
Các vấn đề liên quan