不少人將JSON當作是JavaScript對象。其實JSON是一種字符串的表示方法,這種表示受到了JavaScript對象結構的啓發而已。設計JSON的用意是方便服務器和瀏覽器交換數據。因爲JSON的簡單性,在瀏覽器、服務器以外的領域也有普遍的應用。javascript
我嘗試複製一些JavaScript對象,而後將它們發送到一個基於JSON的書籤站點。可是它不能工做,爲何?讓咱們檢查一下我嘗試發送的JavaScript對象:html
{ name : "why this kolaveri di", url : "http://www.youtube.com/watch?v=YR12Z8f1Dh8", singer: "Dhanush", movie: "3", music : "Anirudh Ravichandran", views : 10000000, // Adding this for testing purpose play : function() { }, }
服務器返回的錯誤信息是Unexpected token n
(服務器使用NodeJS和Express框架搭建),這意味着上面的JavaScript對象不是合法的JSON。我閱讀了Douglas Crockford的JSON說明,而後注意到了這些規定:java
,
分隔符。因此我上面的代碼須要修改爲web
{ "name" : "why this kolaveri di", "url" : "http://www.youtube.com/watch?v=YR12Z8f1Dh8", "singer": "Dhanush", "movie": "3", "views" : 10000000, "music" : "Anirudh Ravichandran" }
我以爲,學習JSON標記是很重要的,由於web開發中的大量配置文件(package.json、bower.json)是JSON格式。每一個web開發者都應該瞭解JSON。json
原文 JSON is not Javascript Object
翻譯 SegmentFaultsegmentfault