具有ajax事件的函数在调用时返回undefined

时间:2017-12-19 04:42:17

标签: javascript jquery ajax

我有一个名为' getAuthor'在里面有一个运行的ajax事件(参见下文)

function getAuthor(id){
    $.get('http://www.connectnigeria.com/articles/wp-json/wp/v2/users/74',function(e){
        var author = e.name;
        console.log(author);
        return author;
    });
}

尝试从控制台运行,你会看到它返回" undefined"而console.log显示来自ajax调用的预期响应。

任何,想法有帮助吗?

1 个答案:

答案 0 :(得分:0)

除非函数有明确的返回,否则它将始终返回undefined

在控制台中,它是未定义的,因为函数getAuthor没有返回任何内容。不要与$.get的回报混淆。

console.log语句位于此异步函数中。要从函数getAuthor返回,请尝试使用

function getAuthor(id){
    return $.get('http://www.connectnigeria.com/articles/wp-json/wp/v2/users/74',function(e){
        var author = e.name;
        console.log(author);
        return author;
    });
}