2013-01-05 86 views
0

这段JavaScript有什么问题?JavaScript条件语句不起作用

var numPackages == 0; 

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

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

+2

的问题是,你用条件来混淆分配。 – elclanrs

回答

3

所有其他与经营者相比较,并==的分配操作员=解释你的错误。

解决这将是

var numPackages = Math.ceil(coffeeProducts/12); 
5

==是条件。

=被赋值。

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

所以:

var numPackages = Math.ceil(coffeeProducts/12); 
+0

嘿!谢谢您的帮助。 :) –

1

使每个语句是这样的:

if (coffeeProducts <= 12) { 
    numPackages = 1; // just "=", not "==" 
} 
1

用于分配单等于(=)的捷径:X = 10个

双等于(==)用于比较:如果(X = = 10)

三等于特殊情况,其中类型是重要的以及价值。

改变你的两个numPackages线到一个平等和你去好:)