我想从函数中的 jQuery getJSON 方法返回数据。
console.log(loadJson());
我认为失败是我在函数中使用了函数,而我的返回在内部函数中。我尝试了很多机会,但找不到正确的解决方案。
结果始终是“未定义”。
这是我的简单代码:
function loadJson(){
$.getJSON('data.json', function (data) {
return data;
});
}
console.log(loadJson());
感谢您的帮助。
您是否知道 jQuery 的 .getJSON() 函数是异步的?它没有返回值,直到一段时间后从服务器获取数据?
解决方案是使用回调来处理异步结果或异步或等待的 Promise。
我将使用回调提供
function loadJson(callback) {
$.getJSON('data.json', function(data) {
callback(data);
});
}
loadJson(function(data) {
console.log(data);
});
希望这对您有帮助。