W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在JSON對(duì)象中屬性可有任意順序。然而,在某些情況下,有序的屬性可以幫助分析器快速解釋數(shù)據(jù),并帶來(lái)更好的性能。在移動(dòng)環(huán)境下的解析器就是個(gè)例子,在這種情況下,性能和內(nèi)存是至關(guān)重要的,不必要的解析也應(yīng)盡量避免。
Kind屬性應(yīng)為第一屬性
假設(shè)一個(gè)解析器負(fù)責(zé)將一個(gè)原始JSON流解析成一個(gè)特定的對(duì)象。_kind_屬性會(huì)引導(dǎo)解析器將適合的對(duì)象實(shí)例化。因而它應(yīng)該是JSON對(duì)象的第一個(gè)屬性。這僅適用于對(duì)象有一個(gè)kind屬性的情況(通??梢栽赺data_和_items_屬性中找到)。
_items_應(yīng)該是_data_對(duì)象的最后一個(gè)屬性
這使得閱讀每一個(gè)具體條目前前已讀所有的集合屬性。在有很多條目的情況下,這樣就避免了開(kāi)發(fā)人員只需要從數(shù)據(jù)的字段時(shí)不必要的解析這些條目。
這讓閱讀所有集合屬性先于閱讀單個(gè)條目。如遇多個(gè)條目的情況,當(dāng)開(kāi)發(fā)者僅需要數(shù)據(jù)中的字段時(shí),這就可避免解析不必要的條目。
屬性順序示例:
// "kind" 屬性區(qū)分 "album" 和 "photo".
// "Kind" 始終是它父對(duì)象的第一個(gè)屬性.
// "items" 屬性是 "data" 對(duì)象的最后一個(gè)屬性.
{
"data": {
"kind": "album",
"title": "My Photo Album",
"description": "An album in the user's account",
"items": [
{
"kind": "photo",
"title": "My First Photo"
}
]
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: