例如
function getResult(field) {
$.ajaxSetup ({cache: false, async: false});
$.get("api.php?field="+field, function(i) {
result = i;
});
return result;
};
这样做的问题是结果变得全局化。如果我执行 var result = i;
,那么父函数 (getResult) 将无法看到变量 result
。
有什么聪明的方法可以做到这一点吗?
我发布的代码工作正常。我已将 AJAX 调用设置为同步完成。
最佳答案
function doIt(arr) {
var result = [];
$.each(arr, function (y_u_key_jQuery_y_u_no_fix_api, value) {
result.push(value);
});
return result;
}
通常,您想要做的是在外部函数中创建一个局部变量,内部函数通过闭包范围来操作该变量
关于javascript - 将变量从子函数传递到父函数javascript的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8312094/