0

这个 JavaScript 有什么问题?

var numPackages == 0;

if (coffeeProducts <= 12) {
  numPackages == 1;
} else if (coffeeProducts % 12 == 0) {
  numPackages == coffeeProducts/12;
} else {
  numPackages == (coffeeProducts/12) + 1;
}

基本上,它需要计算运送一定数量的物品(每箱 12 个)所需的盒子/包裹的数量。有没有更好的方法来做到这一点,也许使用round()?

4

4 回答 4

5

==是条件。

=是赋值。

更好的方法是使用Math.ceil()四舍五入到下一个整数。

所以:

var numPackages = Math.ceil(coffeeProducts/12);
于 2013-01-05T23:32:06.823 回答
3

所有其他人都用比较运算符==和分配运算符解释了您的错误=

解决它的最短方法是

var numPackages = Math.ceil( coffeeProducts / 12 );
于 2013-01-05T23:35:30.867 回答
1

使每个语句看起来像这样:

if (coffeeProducts <= 12) {
    numPackages = 1; // just "=", not "=="
}
于 2013-01-05T23:33:57.260 回答
1

单个等于 (=) 用于赋值:x = 10

双等号 (==) 用于比较:if (x == 10)

三重等于类型和值都很重要的特殊情况。

将你的两个numPackages行更改为一个等号,你很高兴:)

于 2013-01-05T23:36:56.903 回答