Udacity Murder Mystery - javascript不保存变量

时间:2018-05-15 04:48:02

标签: javascript variables if-statement

这是我在Stack Overflow上的第一个问题,也是我遇到问题的第一个问题。



    var room = "ballroom";
    var suspect = "Mr. Kalehoff";
    
    var weapon = "";
    var solved = true;
    
    if (room === "dining room" && suspect === "Mr. Parkes") {
        weapon === "knife";
        solved === true;
    } else if (room === "gallery") {
        weapon === "trophy";
        solved === true;
    } else if (room === "ballroom" && suspect === "Mr. Kalehoff") {
        weapon === "pool stick";
        solved === true;
    } else {
        weapon === "poison";
        solved === false;
    }
    
    if (solved) {
    	console.log(suspect + " did it in the " + room + " with the " + weapon + "!");
    }




在上面的javascript代码中,变量武器已解决的值不会保存并反映在控制台上,即使我已经改变房间怀疑符合条件;声明不会起作用。

对此有任何帮助将不胜感激。 希望这一切都有道理。 干杯!

3 个答案:

答案 0 :(得分:0)

if& amp;否则你需要使用单=

分配值



var room = "ballroom";
var suspect = "Mr. Kalehoff";

var weapon = "";
var solved = true;

if (room === "dining room" && suspect === "Mr. Parkes") {
  weapon = "knife"; //changed here
  solved = true;    //changed here
} else if (room === "gallery") {
  weapon = "trophy";   //changed here
  solved = true;       //changed here
} else if (room === "ballroom" && suspect === "Mr. Kalehoff") {
  weapon = "pool stick";   //changed here
  solved = true;           //changed here
} else {
  weapon = "poison";       //changed here
  solved = false;          //changed here
}

if (solved) {
  console.log(suspect + " did it in the " + room + " with the " + weapon + "!");
}




答案 1 :(得分:0)

对于变量的赋值操作(或保存)值,必须使用single = symbol。
有关分配操作的更多参考
1.w3schools

2.developer.mozilla

所以使用

weapon = "knife";
solved = true;

答案 2 :(得分:0)

else if中的变量“weapon”和“solve”只需要使用1'='。 像这样:

weapon = "knife";
solved = true;

仅使用1'='将变量(武器)设置为新值(刀)。 使用3'==='是要求它等于它的值和类型。换句话说,你在做的是询问“武器”是否匹配“刀”,这将输出“假”。 ===表示专门匹配TYPE和VALUE,而不仅仅是值。而==只会比较值,所以“1”== 1会输出'true',因为javascript只是比较值,即使一个是字符串而一个是数字。但是===比较值和类型,所以“1”=== 1会输出'false',因为即使值相同,类型也不同(一个是字符串,一个是数字)

请参阅Udacity / Grow With Google第11.19课 - 平等。