簡體   English   中英

從樹中獲取json數據並饋入關聯數組

[英]getting json data from tree and feeding through to associative array

我正在嘗試讀取JSON API,並將數據解析為關聯數組,但似乎無法正常工作。 我一定做錯了什么。

這是我的代碼:

   var matchedValues = {};

    $.getJSON(url ,function(data) {
        $.each(data, function() {
            var value = this["value"];
            var climb = this["climb"];
            matchedValues[value] = climb;
        });
    });

    console.log(matchedValues); //Outputs Object{}

有任何想法嗎? 我認為控制台沒有正確記錄日志,或者我做錯了什么?

謝謝

從jQuery文檔嘗試這種方法

編輯:

$.getJSON(url, function(data) {
var matchedValues = {};
$.each(data, function(key, val) {
items[key] = val;
});

matchedValues是一個Object而不是數組。 嘗試一些likmatchedValues['your_key']以獲取值。

我假設從ajax調用返回的數據是您希望解析的JSON字符串。 如果是這種情況,則可以使用JavaScript的JSON對象解決問題:

var matchedValues = {};

$.getJSON(url ,function(data) {
    matchedValues=JSON.parse(data);
});

console.log(JSON.stringfy(matchedValues)); //Outputs Object{}

如上例所示,您必須逆轉該過程才能將其打印出來。

請參閱JSON MDN文章

如果我理解您的問題,那么您的數據就是一個對象Array ,您想將它們合並到一個大對象中。 如果正確,請使用以下方法:

var matchedValues = {};
$.getJSON("ajax/test.json", function(data) {
    for (var i = 0; i < data.length; i++) {
        for (key in data[i]) {
            matchedValues[key] = data[i][key];
        }
    }
    console.log(matchedValues); //this should print your object.
});

數據對象必須具有不同的鍵,否則它們將重疊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM