2015-05-29 78 views
0

我试图让pacman陷入幽灵时失去了生命。然后根据他的生活数量他显示了一个特定的信息,但是这个变量似乎并没有考虑到我正在改变它。在javascript中修改变量?不工作

ANy suggestions?

var life=3; 
// Lorsque l'on rencontre un fantome. 
function manchePerdue() 
{ 
    x_Pacman = 13; 
    y_Pacman = 10; 

    life = life-1; 

    if (life=2) { 
    window.alert("2 Lives Left"); 
    } 
    else if (life=1) { 
    window.alert("1 Life Left"); 
    } 
    else { 
    window.alert("Game Over"); 
    gameover(); 
    } 
} 
+1

'='是赋值'=='是否相等,请检查你的if语句。 – hoss

回答

3

您需要使用等于运算符==你如果的,而不是赋值运算符=

if (life == 2) { 
    alert("2 Lives Left"); 
else if (life == 1) { 
    alert("1 Life Left"); 
} else { 
    alert("Game Over"); 
    gameover(); 
} 

使用=表示您将重新分配每个值的值以进行检查。例如:

var lives = 3; 
if (lives = 1) { 
    alert("1 life"); // Will show up 
} 
alert(lives); // Will show "1"! 

JavaScript也有使用===运算符严格平等的想法。在严格平等的情况下,类型也必须匹配。

1 == 1; // true 
1 == "1"; // true 
1 === "1"; // false 

对于它的价值,你还会发现,你不需要写window.alert,只是写alert就足够了,因为window是全球范围内。