有点像:
function getfoo() {
var foo = "";
$.get("foofile.html",function (data) {
foo = data;
});
return foo;
}
但是,由于脚本是异步的,它将返回“”.那显然不是我想要的.
那么我试过这个:
function getfoo() {
var foo = "";
$.get("foofile.html",function (data) {
foo = data;
});
for (;;) {
if (foo != "") {
return foo;
break;
}
}
}
我希望它可以工作,但事实并非如此.为什么不?有人可以提出解决方案吗?
解决方法
您应该使用函数的回调传递,让它处理您的数据.
function getfoo(callback) {
var foo = "";
$.get("foofile.html",function (data) {
callback(data);
// do some other things
// ...
});
}
getfoo(function(data) {
console.log(data);
});