这个JavaScript出了什么问题?
var numPackages == 0;
if (coffeeProducts <= 12) {
numPackages == 1;
} else if (coffeeProducts % 12 == 0) {
numPackages == coffeeProducts/12;
} else {
numPackages == (coffeeProducts/12) + 1;
}
基本上,它需要计算运送一定数量物品所需的箱子/包装数量(每箱12个)。有没有更好的方法来做到这一点,也许使用round()?
答案 0 :(得分:5)
==
是条件。
=
是作业。
更好的方法是使用Math.ceil()
舍入到下一个整数。
所以:
var numPackages = Math.ceil(coffeeProducts/12);
答案 1 :(得分:3)
所有其他人都通过比较运算符==
和分配运算符=
解释了您的错误。
解决问题的最短途径是
var numPackages = Math.ceil( coffeeProducts / 12 );
答案 2 :(得分:1)
使每个陈述看起来像这样:
if (coffeeProducts <= 12) {
numPackages = 1; // just "=", not "=="
}
答案 3 :(得分:1)
分配的单一等于(=): x = 10
Double equals(==)用于比较: if(x == 10)
对于类型非常重要的特殊情况以及值,三等于。
将您的两个 numPackages 行更改为单个等号,然后您就可以了:)