2017-08-31 82 views
-2

in jsLint我不斷收到這5個錯誤:不斷收到'意外'(空間)'錯誤?

'意外'(空間)'案例夏天。

'意外'(空間)'案件冬季。

'意外'(空間)'情況下降。

'意外的'(空間)'案件秋天。

'Unexpected'(space)'case spring。

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; 
+1

很難幫助你的代碼格式化出現毛病。很可能在你的case語句附近有*額外的空間*,但是除非代碼在這裏顯示,否則我們無法知道,因爲它實際上在文件中。說實話,我會在你的「case」聲明之後尋找額外的空格。 –

+2

歡迎來到StackOverflow。請閱讀[幫助中心](https://stackoverflow.com/help)。在您的特定問題中,您可以使用代碼格式更好地顯示錯誤消息。此外,導致此錯誤的代碼對於幫助您是必要的。 – Pac0

+1

這只是一個代碼格式化消息。如果你不想看到它們,要麼確保你不需要額外的空白處;或打開該選項忽略空白混亂 –

回答

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,這表明你想要「容忍空白亂七八糟」。

/*jslint: white:true */ 
var season = prompt("what is your favourite season"); 
// ... 

但現在你將有一個新事物整體轉換,以修復...

  • 預期的「開關」是一個功能。
  • 未聲明'提示'。
  • 未聲明'警報'。

第一個很容易;你只是包裝在一個功能。

第二個在那裏,因爲你沒有告訴JSLint期望的上下文,並且不確定alertprompt是否爲有效調用。你可以告訴它alertprompt與其他類型的指令時,global directive全局,但請記住......

全局變量的使用是極力勸阻,但不幸的是Web瀏覽器需要使用它們。

所以使用全局指令,你還需要設置browser指令在我們先前添加的JSLint的評論。

不管你信不信,下面這個爛攤子已經丟了!試試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; 
} 
} 

promptalert是特殊情況。這些是您在瀏覽器開發期間使用的功能。而不是在全球指令中設置它們,使用devel這樣的指令...

我也要脫掉white:true並清理這個東西,使它可讀...請注意,沒有尾部空格,並且我們有case陳述排列在switch,這對我來說最初看起來很奇怪。

/*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快樂,乾淨的空白的代碼段。我可能會將alert移動到最後,並將值分配給交換機中的字符串,但JSLint已經很開心。

希望有所幫助,併爲您提供使用JSLint的一點啓動。