嗨,我有函数,它返回一个JavaScript类,但在运行时返回值是未定义的。当我将返回值设置为某个全局变量时,它在Chrome开发者控制台上给了我正确的结果。为什么会发生?Javascript函数类对象返回undefined
var globalData;
$(document).ready(function(){
var request = postRequest("contact", dt, elem);
globalData = request;
console.log(request.status); //this gaves me undefined
});
function returnObj(status, message, projects) {
this.status = status;
this.message = message;
this.projects = projects;
}
function postRequest(method, vars, elem) {
var result = new returnObj();
$.post('api.aspx',
{
method: "test"
},
function (data, status) {
var resultObject = $.parseJSON(data);
result.status = resultObject.status;
result.message = resultObject.message;
result.projects = resultObject.projects;
});
return result;
}
http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-电话 – naortor
帖子是异步的,当函数返回“result”后肯定还没有完成! – Baro