切换javascript中的意外标记
switch unexpected token in javascript
我在下面的代码中发现了一个意外的令牌。
switch ( hobby ) {
case =" painting ":
message = "Van Gogh was good at that.";
break;
case =" drawing ":
message = "Hey! Van Gogh did that too.";
break;
case =" playing guitar ":
message = "Bob Dylan played guitar.";
break;
case =" sleeping in ":
message = "My favorite hobby in the winter.";
break;
default
}
有人看到我缺了什么吗?
您的语法已关闭。在case
s之后删除=
。此外,您还需要在default
之后放置:
。
有关switch
语句的详细信息,请参阅此处。
您可以利用函数语义来避免在每个case
:中使用break
var message = (function(){
switch (hobby) {
case 'painting': return 'Van Gogh was good at that.'
case 'drawing': return 'Hey! Van Gogh did that too.'
case 'playing guitar': return 'Bob Dylan played guitar.'
case 'sleeping in': return 'My favorite hobby in the winter.'
}
}())
然而,表达这种逻辑的最佳方式可能是如下所示:
var messages = {
'painting': 'Van Gogh was good at that.',
'drawing': 'Hey! Van Gogh did that too.',
'playing guitar': 'Bob Dylan played guitar.',
'sleeping in': 'My favorite hobby in the winter.'
}
var message = messages[hobby]
相关文章:
- Javascript未捕获语法错误意外的标识符错误
- JSON分析错误:Java中AJAX、Javascript和Servlet的意外EOF
- 意外的令牌非法javascript/metrol
- 意外的javascript输出
- 未捕获的语法错误:javascript对象上出现意外的标记ILLEGAL
- 未捕获的语法错误:javascript中出现意外的标记}
- JavaScript-Gulp/Browserify:SyntaxError:意外的令牌
- Javascript 意外返回值,带有特定的缩进
- Javascript:函数返回意外结果
- ES6 类扩展本机类型使实例在某些 JavaScript 引擎中出现意外行为
- JavaScript:控制台的意外输出.log('str' + int + int)
- 意外;在我的JavaScript中,我不明白为什么
- JavaScript意外的令牌<,有什么方法可以逃避错误(或至少跳过那些无用的字符)
- Chrome 的 Javascript 控制台中的意外标识符
- “语法错误:意外的令牌)”在 javascript 调用中,当 eval(value) 为空时
- Javascript 数组反向函数意外行为
- HTML 无法识别我要求它运行的 javascript 文件,语法错误:意外的令牌“<”(匿名函数)script.js:
- 来自 JavaScript 循环的意外结果
- JavaScript 问题 - 意外的令牌 (.
- Chrome内部循环行为的意外Javascript