gpt4 book ai didi

javascript - 为什么涉及 if 语句的 JavaScript 计算不起作用?

转载 作者:行者123 更新时间:2023-11-30 10:12:25 26 4
gpt4 key购买 nike

想法是生成一个从 1 到 10 的随机数,这将是订购产品的磅数。然后,使用该数字,代码将计算产品成本和运费,将它们相加得出总计。然后它将有关购买的信息写入 HTML 文档。

问题不在于随机数生成器;那工作正常。它似乎也不是将信息写入文档的最后一步。相反,似乎我的计算(包含在 if-else 语句中)不起作用。 JavaScript 将 costBoxcostShippingcostTotal 读取为未定义。我已尝试更改语法,并且检查了代码以确保没有遗漏括号或方括号。我查阅了我的教科书,但那里的代码布局类似。你能帮我找出问题所在吗?

这是我的代码:

var num = Math.ceil(Math.random() * 10);
var costBox;
var costShipping;
var costTotal;

if (num >= 1 && num <= 5) {
costBox == 20;
}
else if (num >= 6 && num <= 9) {
costBox == 15;
}
else if (num == 10) {
costBox == 10;
}

if (num >= 1 && num <= 3) {
costShipping == 5;
}
else if (num >= 4 && num <= 7) {
costShipping == 10;
}
else if (num == 8 || num == 9) {
costShipping == 15;
}
else if (num == 10) {
costShipping == 20;
}

costBox == costBox * num;
costTotal == costBox + costShipping;

window.onload = function() {
document.getElementById("pageNum").innerHTML = num;
document.getElementById("pageBox").innerHTML = costBox.toFixed(2);
document.getElementById("pageShipping").innerHTML = costShipping.toFixed(2);
document.getElementById("pageTotal").innerHTML = costTotal.toFixed(2);
}

下面是NPE推荐后的代码:

       var num = Math.ceil(Math.random() * 10);
var costBox;
var costShipping;
var costTotal;

if (num >= 1 && num <= 5) {
costBox = 20;
}
else if (num >= 6 && num <= 9) {
costBox = 15;
}
else if (num == 10) {
costBox = 10;
}

if (num >= 1 && num <= 3) {
costShipping = 5;
}
else if (num >= 4 && num <= 7) {
costShipping = 10;
}
else if (num = 8 || num = 9) {
costShipping = 15;
}
else if (num = 10) {
costShipping = 20;
}

costBox == costBox * num;
costTotal == costBox + costShipping;


window.onload = function() {
document.getElementById("pageNum").innerHTML = num;
document.getElementById("pageBox").innerHTML = costBox.toFixed(2);
document.getElementById("pageShipping").innerHTML = costShipping.toFixed(2);
document.getElementById("pageTotal").innerHTML = costTotal.toFixed(2);
}

最佳答案

以下是比较,不是赋值:

    costBox == 20;

== 更改为 =(此处和所有其他类似位置)。

另请注意,Math.random() 可以准确返回 0,而您的代码并未处理该问题。

关于javascript - 为什么涉及 if 语句的 JavaScript 计算不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25753318/

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