在 JavaScript 中计算角度值

问题描述 投票:0回答:1

我正在尝试编写一个代码,计算直角三角形中的角度值(只要提供它的 sin、cos 或 tan)。例如,在计算器中,如果您有 sin(x) 的值并且想要找到角度,则输入 sin^-1(x) 并得到该角度。我怎样才能用 JavaScript 编写这段代码?

我尝试使用此代码,但它不起作用,我不知道它是否对我的项目有帮助:

radianToDegree = r => r * 180 * Math.PI ** -1
console.log(radianToDegree(Math.asin(0.5)).toFixed(3) * 1)

javascript math trigonometry
1个回答
0
投票

要在 JavaScript 中给定正弦、余弦或正切值时计算直角三角形的角度,可以使用反三角函数(Math.asin()、Math.acos()、Math.atan())。这些函数返回以弧度为单位的角度,但您可以通过将结果乘以 (180 / Math.PI) 轻松将其转换为度数。

以下是如何执行此操作的示例:

function calculateAngle(value, ratioType) {
    let angleInRadians;

    // Determine which inverse trig function to use
    if (ratioType === "sin") {
        angleInRadians = Math.asin(value);
    } else if (ratioType === "cos") {
        angleInRadians = Math.acos(value);
    } else if (ratioType === "tan") {
        angleInRadians = Math.atan(value);
    } else {
        throw new Error("Invalid ratio type. Use 'sin', 'cos', or 'tan'.");
    }

    // Convert radians to degrees
    const angleInDegrees = angleInRadians * (180 / Math.PI);

    return angleInDegrees;
}

// Examples:
console.log(calculateAngle(0.5, "sin")); // Output: 30
console.log(calculateAngle(0.5, "cos")); // Output: 60
console.log(calculateAngle(1, "tan"));   // Output: 45
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.