var wrapper = function() {
var condition; //boolean
$.get('url', function(data) {
console.log(data); //url
condition = true/false;
});
return condition;
}
当我执行wrapper()
时,由于undefined
的异步性质,它始终返回$.get
。如何解决这个问题?
答案 0 :(得分:2)
为什么不做这样的事情并使用回调
var wrapper = function(callback) {
var condition; //boolean
$.get('url', function(data) {
console.log(data); //url
condition = true/false;
callback(condition);
});
}
wrapper(function(condition){
//do something with the returned condition
});
如果您提供更多详细信息,我可以对其进行扩展以帮助您进一步
答案 1 :(得分:2)
使用异步操作时,不返回任何内容。而是将回调函数作为参数发送到wrapper
函数。
var wrapper = function(callback) {
var condition; //boolean
$.get('url', function(data) {
condition = true/false;
callback(condition);
});
}
wrapper(function(condition) {
// check condition
});