【问题标题】:Prompt JavaScript If Else Unexpected Token else提示 JavaScript If Else Unexpected Token else
【发布时间】:2012-10-09 10:11:33
【问题描述】:

我正在使用 Code Academy 自学 JavaScript,并且我正在尝试编写一些简单的代码,以便当提示提出问题时,用户回复会给出响应。

例子。

prompt says "what's your favourite colour?"

user says "blue"

response "that's the same colour as the sky!"

但是当我尝试添加不同的选项时,我得到了 Syntax error: unexpected token else。

我尝试过这样,如果我问了一个问题,回复就会得到回应,而其他任何事情都会得到回应。

这是代码。

prompt("what do you want?");

if ("coke");
{console.log ("no coke, pepsi.")};
else
console.log ("pepsi only.")};

如果有人有任何想法,我将非常感激!

【问题讨论】:

    标签: javascript if-statement syntax-error prompt


    【解决方案1】:

    免责声明:我不为可口可乐工作。

    prompt的返回值,以后要使用需要保存。此外,您还有一些语法错误需要更正:

    var answer = prompt('what do you want?');
    
    if (answer === 'coke') {
        console.log('you said coke!');
    } else {
        console.log('why didn\'t you say coke!?');
    }
    

    当您获得更多案例时,您还可以使用开关:

    var answer = prompt('what do you want?');
    
    switch (answer) {
        case 'coke':
            console.log('you said coke!');
            break;
        default:
            console.log('why didn\'t you say coke!?');
            break;
    }
    

    或者一个对象,因为大多数人更喜欢这样切换:

    var answer = prompt('what do you want?');
    
    var responses = {
        coke: 'you said coke!',
        defaultResponse: 'why didn\'t you say coke!?'
    };
    
    console.log(responses[answer] || responses.defaultResponse);
    

    【讨论】:

      【解决方案2】:

      if 结尾不需要分号。而是这样做:

      if ("coke") {
          console.log ("no coke, pepsi.");
      } else {
          console.log ("pepsi only.");
      }
      

      【讨论】:

        【解决方案3】:

        去掉后面的分号:

        prompt("what do you want?");
        
        if ("coke") {
            console.log ("no coke, pepsi.");
        } else {
            console.log ("pepsi only.");
        }
        

        【讨论】:

          【解决方案4】:

          大括号后面有一个分号。试试:

          var ans = prompt("what do you want?");
          
          if (ans == "coke") {
              console.log ("no coke, pepsi.");
          } else {
              console.log ("pepsi only.");
          }
          

          【讨论】:

            【解决方案5】:
            var name = prompt("what do you want?");  
            if (name == "coke") 
            {
            console.log ("no coke, pepsi.")
            }
            else 
            {
            console.log ("pepsi only.")
            } 
            

            如上

            【讨论】:

              【解决方案6】:

              其实不要这样做

               if (ans == "whatever") {
                  console.log ("whatever");
              } else {
                  console.log ("whatever.");
              }
              

               if (ans == "whatever") {
                  confirm ("whatever");
              } else {
                  confirm ("whatever.");
              }
              

              【讨论】:

                【解决方案7】:

                需要识别variable"if" "else" 语句之间的括号和分号也是有问题的。我不确定console log,但如果你想要popup警报试试这个:

                var brand = prompt ('what do you want?');
                if (brand="coke") {
                   alert ("no coke, pepsi.")
                }else {
                   alert ("pepsi only.")
                };
                

                DICLAIMER:我充其量是新手,只是碰巧调试了类似的问题。 希望对您有所帮助。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2023-01-05
                  • 1970-01-01
                  • 2011-02-24
                  • 1970-01-01
                  相关资源
                  最近更新 更多