我正在预订系统。我想对此进行编程,以便如果用户点击A类按钮,其总价格将增加7.50。对于具有B类,C类等的按钮也是如此。
我尝试这样编码:
var price = 0;
if (button.className === "A")
{
price + 7.50;
}
if (button.className === "B")
{
price + 11;
}
if (button.className === "C")
{
price + 13;
}
但我得到的唯一输出是0!
我可能犯了一个菜鸟错误,但有人可以帮助我吗?
答案 0 :(得分:3)
您想要+=
price += 13;
这相当于:
price = price + 13;
调用price + 13
将无效,因为您永远不会将结果重新分配回price
。
答案 1 :(得分:0)
我希望你能在这里学到一些东西:
您可以在代码顶部写一个alert(button.className);
,告诉您按钮的类名。
然后,正如其中一个人指出的那样,使用else if
。例如,如果它通过第一个条件,则不必通过其他两个条件。这是一个例子:
var dayToday = 'Monday';
if (dayToday === 'Monday') {
doThis();
}
else if (dayToday === 'Tuesday') {
doThat();
}
// Since today is Monday, it will pass the first "if condition"
// It won't have to check the 2nd condition
并且price + 7.50
只计算并返回结果值,但它不会将该值存储在任何位置。您要做的是使用price
(或price = price + 7.50
)将其存储回price += 7.50