2013-04-12 28 views
0

有沒有這樣的事情,這將使一個JSON數據優於另一種? 例如,給定這兩種格式:是否存在Legal/Standard/Pereferred JSON格式?

1.

{ 
    "status":"ok", 
    "result": 
    { 
    "0":{"id":"1", "name":"English"}, 
    "1":{"id":"2", "name":"Chinese"}, 
    "2":{"id":"3", "name":"Portuguese"}, 
    } 
} 

而且 2.

{ 
"status": "ok", 
"result": [ 
      {"id": 1,"name": "English"}, 
      {"id": 2,"name": "Chinese"}, 
      {"id": 3,"name": "Portuguese"} 
      ] 
} 

哪一個是更標準的JSON?還是有不同數量的可接受的標準JSON格式?

+1

好,我會說這就像參數[XML元素VS標籤(http://www.w3schools.com/dtd/dtd_el_vs_attr.asp),答案就在於您更多的設計選擇比任何規範。 – AurA

+2

我會親自使用第二個。第一個很難迭代,沒有明確的理由使用對象來完成數組的工作。 – Blender

+0

@Blender:第二選擇也是我的選擇,但其他開發商是要求一日一! – Arjang

回答

4

JSON是不可知的空白字符的字符串不包含,將忽略它。格式化沒有通用的標準,儘管單個組織可能會選擇以更具可讀性的方式格式化靜態JSON。 JSON的目的是在編程上被人們消費,所以大多數字符串可能會創建沒有空白的JSON。

有在上面的兩個例子的微小差異:第一個具有字符串作爲"id"鍵,而第二數字具有的值。兩者都是有效的JSON字符串。

編輯:我也希望添加有使用對象用數字鍵{"0": 1, "1": 2}並且在陣列的陣列[1, 2]之間的差異顯著表示數據。

+0

+1實際上注意到了區別。 – Blender