我想从getJson函数返回一个值,但事件不会发生,因为getJSON等待。我尝试了实现的回调函数但结果是一样的。 我的代码是
function getFBName(callback) {
$.getJSON("http://ip-api.com/json/?callback=?", function (data) {
callback(data);
});
}
function handleName(a) {
console.log(JSON.stringify(a));
return JSON.stringify(a);
}
控制台结果为true,但返回值为"未定义"
答案 0 :(得分:1)
如果要获取值以返回函数getFBName。你可以做这样的事情:
function getFBName(callback) {
$.getJSON("http://ip-api.com/json/?callback=?")
.done(function(result) {
console.log(result.a); //assuming that exist the element a
});
};
注意:您可以在" console.log"中添加断点。并检查为什么返回undefined。确保正确访问json响应的结果。 请记住,getJSON是异步的