2010-11-19 79 views
2

這是我的JavaScript(多剝離下來):意外的JavaScript皮棉警告 「行意外結束」

function addContent() { 
    var content = []; 
    content.append(
     makeVal({ 
      value : 1 
     }) 
    ); // Generates lint message 
} 

在這個運行的lint程序,我得到的消息

unexpected end of line; it is ambiguous whether these lines are part of the same statement 

上線7.如果我連接第6行和第7行,消息就會消失。

任何人都可以解釋這個歧義的地方嗎?在我看來,第7行的括號明確地關閉了對append()的調用。

+0

你使用哪個lint程序?聽起來像我需要爲它提交一個錯誤報告。 – Spudley 2010-11-19 12:14:05

+1

我寧願說那個時候*內容*是不確定的。 – Gumbo 2010-11-19 12:19:41

+0

這對我來說更具可讀性makeVal({「value」:1}) – mplungjan 2010-11-19 12:43:28

回答

2

它對我來說也是這樣。聽起來就像你使用的lint程序中的一個bug。

你可以理解爲什麼它會納悶,因爲調用makeVal適合的多數民衆贊成依靠插入分號  —除非你在更廣的範圍內正確對待和認識它的append調用參數列表中的代碼的配置文件。在我看來,lint程序實際上並不是解析語言,只是尋找模式,其中意味着它會同時出現誤報和漏報。