在jsLint中我一直得到这5个错误:
'意外'(空间)'案例夏天。
'意外'(空间)'案例冬天。
'意外'(空格)'案件失败。
'意外'(空格)'案例秋天。
'意外'(空格)'案例春天。
var season = prompt("what is your favourite season");
switch (season) {
case "summer":
alert("i love summer too");
break;
case "winter":
alert("i love winter too ");
break;
case "spring":
alert("i love Spring too");
break;
case "fall":
alert("i love Fall too");
break;
case "autumn":
alert("i love autumn too");
break;
答案 0 :(得分:0)
这里已经足够了,最好向您指出JSLint说明,看看未来会发生什么。您可以在此处找到它们:http://jslint.com/help.html
但是这里有什么问题......
TL; DR :主要是抱怨您在case
声明后有空格。
转过来......
case "summer": // <<< there's a space after the colon
......进入这个......
case "summer":// <<<< now there's not!
<强>长:强>
您可以通过在文件顶部添加 JSLint Directive 来解决间距错误。你想要的是white:true
,表示你想要,&#34;容忍空白混乱&#34;。
/*jslint: white:true */
var season = prompt("what is your favourite season");
// ...
但现在你要修复一大堆新事物......
第一个很容易;你只需要包装一个函数。
后两个是因为你没有告诉JSLint期望的上下文,并且不确定alert
和prompt
是否是有效的呼叫。您可以告诉它alert
和prompt
是具有其他类型指令的全局变量global directive,但请记住......
强烈建议不要使用全局变量,但遗憾的是网页浏览器需要使用它们。
因此,要使用globals指令, 还需要在我们之前添加的jslint注释中设置browser
指令。
信不信由你,下面的这个烂摊子已经发现了!在JSLint.com处尝试。
/*jslint white:true, browser:true */
/*global alert, prompt */
function seasonCheck() {
"use strict";
var season = prompt("what is your favourite season");
switch (season) {
case "summer":
alert("i love summer too");
break;
case "winter":
alert("i love winter too ");
break;
case "spring":
alert("i love Spring too");
break;
case "fall":
alert("i love Fall too");
break;
case "autumn":
alert("i love autumn too");
break;
}
}
但prompt
和alert
是特殊情况。这些是您在浏览器开发过程中使用的功能。不要在全局指令中设置它们,而是像这样使用devel
指令......
我还要取消white:true
并清理这个东西,以便它可读......请注意,没有尾随空格,我们有{{ 1}}语句与case
对齐,这对我来说似乎很奇怪。
switch
现在我们有一个JSLint - 快乐,干净利落的代码片段。我可能会将/*jslint devel:true */
function seasonCheck() {
"use strict";
var season = prompt("what is your favourite season");
switch (season) {
case "summer":
alert("i love summer too");
break;
case "winter":
alert("i love winter too ");
break;
case "spring":
alert("i love Spring too");
break;
case "fall":
alert("i love Fall too");
break;
case "autumn":
alert("i love autumn too");
break;
}
}
移到最后并为您的交换机中的字符串赋值,但JSLint已经开心了。
希望有所帮助,并为您提供使用JSLint的一点启动。