NO IMAGE

》 今天遇到雙引號和單引號的問題:

json就是一段有格式的字串,如果資料的封裝與解析都是我們自己做的時候,單引號和雙引號是沒啥關係的,但是如果用到一些別的json相關的庫的時候,或者像筆者這樣是發給別人用的時候,這個就特別需要注意了!

所以應該養成良好的習慣,用json的時候請用雙引號吧!

》 正確的JSON是這樣的:屬性名必須用雙引號包裹

  

var json = ‘{“name”:”imooc”}’; // 這個是正確的JSON格式

var json = “{\”name\”:\”imooc\”}”; // 這個也是正確的JSON格式

var json = ‘{name:”imooc”}’; // 這個是錯誤的JSON格式,因為屬性名沒有用雙引號包裹

var json = “{‘name’:’imooc’}”;//這個也是錯誤的JSON格式,屬性名用雙引號包裹,而它用了單引號

// 檢驗JSON格式是否正確,可以使用 JSON.parse(json); 如果是正確的JSON格式,會返回一個物件

// 否則會報錯

// 如果是物件的話,屬性名可以不用雙引號包裹

var obj = {name:”imooc”};

var obj = {“name”:”imooc”};

var obj = {‘name’:’imooc’};

var obj = {“name”:’imooc’};

var obj = {‘name’:”imooc”};

// 上述寫法都是正確的。一般使用第一種形式最多,有些人可能為了保證跟JSON格式的字串保持一致性,

// 也會使用第二種形式。。最後3種形式雖然是正確的,但不建議使用,容易捱打

1、json格式一般包括七部分組成:[ ](中括號) 、{}(大括號)、key、value、:(冒號)、”(單引號)、””(雙引號)。

2、json格式在解析時是按照如上的格式從左到右解析的,如果遇到格式不對就會報錯。如多個空格,多個引號或非字元。

3、如果json的資料較多在出錯時就很難查詢問題所在,建議模仿二分法將json字元一份為二逐步排除。