所以我第一次开始使用jQuery。当我使用它时:
var data = $.getJSON("https://hackernews.firebaseio.com/v0/item/14279870.json", function(data) {
data = JSON.stringify(data)
});
console.log(data);
我在日志中找到了这个人:object view
但是,如果我尝试记录data.text,data.responseText或类似的东西,我只是未定义。我如何获取数据?
答案 0 :(得分:3)
问题是 "return_value": [{
"Size": "5",
"Color": "Green"}
]
"return_value": [{
"Size": "8",
"Color": "Green"}
]
"return_value": [{
"Size": "5",
"Color": "Pink"}
]
"return_value": [{
"Size": "8",
"Color": "Pink"}
]
在console.log
之前执行,因为data = JSON.stringify(data)
调用是异步的。
这意味着您在控制台中看到的内容不是您在成功回调中获得的对象。
要获得数据对象的正确表示(在服务器调用之后),请将控制台日志放在回调函数中:
$.getJSON
带有示例JSON文件的实例(您的URL返回null):
$.getJSON("https://hackernews.firebaseio.com/v0/item/14279870.json", function(data) {
console.log(data);
data = JSON.stringify(data)
console.log(data);
});
$.getJSON("http://echo.jsontest.com/key/value/one/two", function(data) {
console.log("JSON: ", data);
data = JSON.stringify(data)
console.log("Stringified: ", data);
});