Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的tan_Javascript_Math - Fatal编程技术网

javascript中的tan

javascript中的tan,javascript,math,Javascript,Math,tan(5.3)=0.09276719520463 但在javascript中: 数学谭(5.3)=-1.50127339580693 如何在deg模式下计算javascript中的Math.tan(某物) 您可以乘以以下常量,而不是为其编写包装器函数(并获得性能影响): var deg2rad = Math.PI/180; var rad2deg = 180/Math.PI; 然后像这样使用它们: var ratio = Math.tan( myDegrees * deg2rad );

tan(5.3)=0.09276719520463

但在javascript中:

数学谭(5.3)=-1.50127339580693

如何在deg模式下计算javascript中的Math.tan(某物)


您可以乘以以下常量,而不是为其编写包装器函数(并获得性能影响):

var deg2rad = Math.PI/180;
var rad2deg = 180/Math.PI;
然后像这样使用它们:

var ratio   = Math.tan( myDegrees * deg2rad );
var degrees = Math.atan( ratio ) * rad2deg;
JavaScript只处理弧度,作为参数和返回值。这取决于你如何转换它们

另外,请注意,如果您试图查找xy坐标的旋转度,则应使用
Math.atan2
,以便JavaScript可以判断该点位于哪个象限,并为您提供正确的角度:

[ 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 ]
真难找

要在JavaScript中完成basic,请使用

Math.atan(opposite/adjacent) * 180/Math.PI

换句话说,将度数转换为弧度。从技术上讲,tan(5.3)不是0.092767。。。;tan(5.3°)为0.092767…——如果使用度(或梯度),则必须指定它们。
Math.atan(opposite/adjacent) * 180/Math.PI