JavaScript条件语句不起作用

时间:2013-01-05 23:30:30

标签: javascript math conditional

这个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 个答案:

答案 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 行更改为单个等号,然后您就可以了:)