[英]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.