我可以想到的兩種方式,要麼您知道要查找的內容並直接訪問它,要麼循環訪問鍵,查看鍵的值並嵌套另一個循環,直到到達樹的末尾。
您可以使用自調用函數並使用適當的jQuery來完成此操作。
下面是一個例子:
function get_the_stuff(url)
{
$.getJSON(url, function (data) {
my_parser(data) });
}
function my_parser(node)
{
$.each(node, function(key, val) {
if (val && typeof val == "object") { my_parser(val); }
else { console.log("key="+key+", val="+val); }
});
}
予省略所有的錯誤檢查。還要確保typeof檢查是適當的。您可能還需要其他一些elseif,以不同的方式處理數字,字符串,null或布爾值。這只是一個例子。
編輯:我可能略微錯過了話題說「Python」......對不起。隨意翻譯成python,同樣的原則適用。
EDIT2:現在讓我們試着用Python。我假設你的JSON已經被導入到一個變量中。
def my_parser(node, depth=0):
if type(node) == "list":
for val in node:
my_parser(val,depth+1)
elif type(node) == "dict":
for key in node:
printf("level=%i key=%s" % (depth, key))
my_parser(node[key], depth+1)
elif type(node) == "str":
pritnf("level=%i value=%s" % (depth, node))
elsif type(node) == "int":
printf("level=%i value=%i % (depth, node))
else:
printf("level=%i value_unknown_type" % (depth))
Facebook的圖形API返回的數據(https://imgur.com/a/xN6sp) –