2015-03-31 162 views
1

我一直在尝试Codecademy这个问题整天。我做的没有任何事情似乎有效。如何添加逻辑运算符?

说明: “添加一些if/else语句,以您的案件检查,看看一个条件和其他条件是否属实,还有一个条件或者其他条件是否真实使用& &和||至少。每一次。“

这是我以前输入的代码:

var user = prompt("What is your name?").toUpperCase(); 

switch(user) { 
    case 'Sam': 
     console.log("Hi, Sam"); 
     break; 
    case 'John': 
     console.log("Hi, John"); 
     break; 
    case 'Mary': 
     console.log("Hi, Mary"); 
     break; 
    default: 
     console.log("I don't know you. What is your name?"); 
} 
+0

它说“添加if/else语句”,所以添加这些。 – 2015-03-31 18:59:44

+4

'user'永远不会等于这些名称之一,因为您输入的任何内容都设置为大写。 – blex 2015-03-31 19:00:09

+3

我明白这只是一个演示应用程序而已,但“我不认识你,你叫什么名字?”在你刚刚问过之后......这很奇怪。 – zerkms 2015-03-31 19:00:29

回答

0
  1. .toUpperCase()转换一个字符串为大写字母,所以这将是 'SAM', '约翰' 等

更改它像这样:

String.prototype.capitalizeFirstLetter = function() { 
    return this.charAt(0).toUpperCase() + this.slice(1); 
} 

var user = prompt("What is your name?").capitalizeFirstLetter() 
  1. 你需要测试什么条件?

    switch(user) { 
    case 'Sam': 
        if (someCondition || anotherCondition) { 
          // do something 
        } else { // do something 
        } 
        console.log("Hi, Sam"); 
        break; 
    
    case 'John': 
        console.log("Hi, John"); 
        break; 
    
    case 'Mary': 
        console.log("Hi, Mary"); 
        break; 
    
    default: 
        console.log("I don't know you. What is your name?”); 
    } 
    
1

您的代码没有任何if/else语句。怎么样这样的事情:

var user = prompt("What is your name?").toUpperCase(); 

// If user is known, greet him 
if (user === "SAM" || user === "JOHN" || user === "MARY") { 
    console.log("Hi, " + user) 
} 
// Otherwise apologize because we are polite 
else { 
    console.log("Sorry " + user + ", I don't know you."); 
} 

// If user is neither John nor Sam, ask about them 
if (user !== "JOHN" && user !== "SAM") { 
    console.log("By the way, how are John and Sam doing?"); 
} 
+0

+我为了一个很好的例子和一个让我微笑的评论_'Otherwise道歉,因为我们很有礼貌'__ – blex 2015-03-31 19:24:07