2013-09-29 29 views
0

我正在閱讀這本書的javascript好的部分,並發現了一個不適合我的代碼片段。很難調試,因爲我居然不知道任何JavaScript和我想從這本書中學習...「javascript good parts」中的代碼片段可以防止writeln工作

這是我的計劃:

document.writeln('hello world'); 

var empty_object = {}; 

var stooge = { 
    "first-name": "Jerome", 
    "last-name": "Howard" 
}; 
/* 
var flight = { 
    airline: "Oceanic", 
    number: 815, 
    departure: { 
     IATA: "SYD", 
     time: "2004-09-22 14:55", 
     city: "New York" 
    }, 
    arrival: { 
     IATA: "LAX" 
     time: "2004-09-23 10:42", 
     city: "Los Angeles" 
    } 
}; 
*/ 
document.writeln('Hello world'); 

現在,當我刪除的註釋塊無人飛行宣言沒有輸出。作爲參考,這是從本書的第21頁。

+0

@ Qantas94Heavy這是資格作爲答案 – karthikr

+0

@ Qantas94Heavy是最後!!!哇。所以我猜代碼只是不會運行,如果有語法錯誤?我怎麼能在將來防止這個問題..guess我會開始研究debugers – user2202911

+0

但是,不要使用'document.write()'。 – SLaks

回答

3

"LAX"之後有一個逗號缺失。這是克羅克福德編碼風格的挫折之一 - 缺少逗號是很難注意的。在那裏有替代的編碼風格可以解決這個問題(例如逗號優先),但是他們有自己的問題。

此外,document.writeln是潛在的危險,而不是最好的做法是使用 - 如果你正在尋找檢查的東西正在運行,打開控制檯(在Chrome中,螢火蟲(Firefox擴展,這比原生更好F12一個)和IE,Ctrl + Shift + K適用於Firefox的本機控制檯)。

Firebug console Source with error line highlighted

錯誤告訴你,之前或在第20行是一個錯誤 - 因爲沒有逗號,它期望對象文本(經用}結束)結束,所以它提供了一個在線20錯誤。