gpt4 book ai didi

jquery - 返回之前等待异步完成

转载 作者:行者123 更新时间:2023-12-01 05:45:34 27 4
gpt4 key购买 nike

是否可以安全地等待异步请求完成,然后从函数返回值。这样的事情会导致任何问题吗?

使用 jQuery

function test()
{
var $request = ...; //Async promise

var done = false;
while(!done)
{
$request.always(function(){
done = true ;
}) ;
}

return true ;
}

[更新] 正如 @Ninsly 指出的,javascript 只有一个线程,因此使用循环不是一种选择。

重复 JavaScript asynchronous return value / assignment with jQuery

最佳答案

您可以使用同步 Ajax 请求。将 async 选项指定为 false 以获取同步 Ajax 请求。然后,您的回调可以在父函数继续之前设置一些数据。

test: function(){
jQuery.ajax({
url: '...',
success: function(response) {
if(response.bOk == false)
alert(response.content);
//you could return some here
},
async: false
});
}

请小心,如果您要使用此功能,您将阻止/锁定所有其他处理,直到完成为止...就像在 PHP 中无休止地做一样。所以如果你的请求没有结束..这会导致一个小问题:)

关于jquery - 返回之前等待异步完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27068567/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com