gpt4 book ai didi

javascript - javascript 测量转换功能出现问题。 "If ... else if... else"

转载 作者:行者123 更新时间:2023-12-03 09:21:43 25 4
gpt4 key购买 nike

我有以下函数,它应该从嵌套在函数中其他地方声明的数组中获取数字,查看字符串数组中相应的字符串,并对数字应用转换因子,然后写入输出到不同的数组。我使用的是 Canvas ,因此我编写了 Canvas 代码以在此处输出以进行调试,但最后我只得到“else”语句。每次用户更新页面中的信息时都应该调用该函数,并且这对于其他函数来说可以正常工作。我是否遗漏了一些明显的东西?

function arrayFinalizer()
{
var itemSelector = document.getElementById("itemSelector");
var i = itemSelector.value - 1;

if (arrayInput[i] == "Ounces")
{
arrayFinal[i] = Math.ceil(arrayOut[i] / 16);
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.fillText("Ounces", 0, 20);
return arrayFinal[i];
}
else if (arrayInput[i] == "Pounds")
{
arrayFinal[i] = Math.ceil(arrayOut[i]);
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.fillText("Pounds", 0, 20);
return arrayFinal[i];
}
else if (arrayInput[i] == "Grams")
{
arrayFinal[i] = Math.ceil(arrayOut[i] / 453.592);
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.fillText("Grams", 0, 20);
return arrayFinal[i];
}
else if (arrayInput[i] == "Kilograms")
{
arrayFinal[i] = Math.ceil(arrayOut[i] * 2.20462);
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.fillText("Kilograms", 0, 20);
return arrayFinal[i];
}
else
{
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.fillText("mathEngine error", 0, 20);
return;
}
};

注释:

我知道 arrayInput 的写入正确,并且它可以接收的唯一值是“盎司”“磅”“克”和“千克”,因为我在这一点之前和之后都使用了 array.ToString() 方法在程序中检查其值。

由于上述原因,我也知道 arrayOut 具有数值。我知道我成功地调用了这个函数,因为我得到了 else fillText 输出,并且它正在覆盖上游的另一个调试语句。

我在 if 语句中尝试了“==”和“===”运算符,没有区别。

最后,我没有在控制台中收到任何错误消息。

最佳答案

您能把这个放在第 1 行吗? 5、告诉我们控制台日志,以便我们轻松解决。

console.log(i);
console.log(arrayInput);

如果您确信 i 作为整数和 arrayInput 具有提到的可能值,您可以将其应用于每个 if 条件并重试:

if (arrayInput[i].toLowerCase().trim() == "ounces")
else if (arrayInput[i].toLowerCase().trim() == "pounds")

关于javascript - javascript 测量转换功能出现问题。 "If ... else if... else",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31822392/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com