跳到主要内容

JavaScript Math对象之atan2()函数

atan2() 方法将其两个参数相除,并计算结果的反正切值(正切的逆)。

示例

let num = Math.atan2(4, 3);
console.log(num);

// 输出:0.9272952180016122

atan2() 语法

atan2() 方法的语法是:

Math.atan2(x, y);

这里,tan() 是一个静态方法。因此,我们使用类名 Math 来访问该方法。

atan2() 参数

atan2() 方法接受两个参数:

  • x - 数字,被参数 y
  • y - 数字,除以参数 x

这里,该方法计算 x / y 的反正切值。

atan2() 返回值

该方法返回:

  • 计算 x / y 的反正切值后得到的角度(以弧度为单位)
  • 对于非数字参数 xy 返回 NaN(非数字)

注意: 对于数值参数,返回的角度总是在 π 的范围内。

示例 1:JavaScript Math.atan2()

// 计算 5 / 2 的反正切值
let result1 = Math.atan2(5, 2);
console.log(result1);

// 计算 0 / 5 的反正切值
let result2 = Math.atan(0, 5);
console.log(result2);

// 输出:
// 1.1902899496825317
// 0

在上述示例中,

  • Math.atan2(5, 2) - 计算 2.55 / 2)的反正切值
  • Math.atan2(0, 5) - 计算 00 / 5)的反正切值

示例 2:Math.atan2() 使用无穷大

// 使用正无穷大的 atan2()
let num = Math.atan2(Infinity, 0);
console.log(num);

// 使用负无穷大的 atan2()
let num = Math.atan2(-Infinity, 0);
console.log(num);

// 使用两个无穷大的 atan2()
let num = Math.atan2(Infinity, -Infinity);
console.log(num);

// 输出:
// 1.5707963267948966 (π/2)
// -1.5707963267948966 (-π/2)
// 2.356194490192345 (3*π/4)

在这里,你可以看到我们已成功使用了 atan2() 方法与无穷大。即使使用了无穷大,结果仍然在 π 之间。

示例 3:Math.atan2() 使用非数字参数

// 字符串变量
let str1 = "John";
let str2 = "Wick";

// 使用字符串参数的 atan2()
let result = Math.atan2(str1, str2);
console.log(result);

// 输出:NaN

上面的代码展示了使用字符串参数的 atan2() 方法。这就是为什么我们得到输出 NaN

推荐阅读: