Javascript 我在jQuery中遇到函数未定义错误,即使函数已定义

Javascript 我在jQuery中遇到函数未定义错误,即使函数已定义,javascript,jquery,ajax,Javascript,Jquery,Ajax,这就是我在代码中通过ajax从控制器获取会话信息的内容 function getMySession() { $.ajax({ url: 'ajax-get-actual-session', type: 'POST', dataType: 'json', success: function(response) { return response; } }); } getMySe

这就是我在代码中通过ajax从控制器获取会话信息的内容

function getMySession() {
    $.ajax({
        url: 'ajax-get-actual-session',
        type: 'POST',
        dataType: 'json',
        success: function(response) {
            return response;
        }
    });
}

getMySession()
.done(function(r) {
    if (r) {
        alert(JSON.stringify(r));
    } else {
        alert('bad');
    }
})
.fail(function(x) {
    alert('even worse');
});
但我在Firefox控制台中遇到一个错误:

TypeError:getMySession(…)未定义

但是,我已经在代码中定义了它。为什么呢?我做错了什么


有什么想法吗?我如何才能让这段代码工作?

您需要返回承诺

function getMySession() {
  return $.ajax({ ...

那么您在哪里定义的呢?您没有在
getMySession
函数中返回承诺,错误消息是您的返回未定义,而不是函数是
function getMySession(){$.ajax({url:'ajax get实际会话',type:'POST',dataType:'json',success:function(response){return response;}}}
@PatrickEvans
返回响应输入success@Jospehione:该
返回响应实际上什么都不做。