Javascript 有没有办法让函数在setTimeout之后返回?
我有一个布尔函数,在某些情况下,我需要它等待6秒才能返回 我正在尝试做一些类似的事情:Javascript 有没有办法让函数在setTimeout之后返回?,javascript,jquery,Javascript,Jquery,我有一个布尔函数,在某些情况下,我需要它等待6秒才能返回 我正在尝试做一些类似的事情: function myFunc() { if (pending) { setTimeout(return true, 6000); } else { return false; } } 我使用setTimeout的原因是,我在同一时间运行了一些其他代码,我希望能够取消setTimeout 有人能帮忙吗 谢谢 最好的方法是在延迟一段时间后调用函数 function
function myFunc() {
if (pending) {
setTimeout(return true, 6000);
} else {
return false;
}
}
我使用setTimeout的原因是,我在同一时间运行了一些其他代码,我希望能够取消setTimeout
有人能帮忙吗
谢谢 最好的方法是在延迟一段时间后调用函数
function myFunc() {
if (pending) {
setTimeout(myFunc(), 6000);
} else {
//run the procedure that must be called if not pending
}
}
不行!!!您需要了解如何使用回调。。。另请参见“谢谢”,但我很清楚回调的用法,我也阅读了像您这样的帖子中的内容。但它并没有回答我的问题。。。我需要外部函数在6秒后返回。在这种情况下,您需要承诺。类似这样,但您也可以选择其他实现。您能更广泛地解释一下延迟函数返回的目的吗?是的:我称之为“myFunc”的实际上是一个jQuery验证程序函数。你看,这个函数在提交表单时被调用。在某些情况下,我需要表单在提交之前等待服务器的响应。所以,在得到响应之前,或者如果6秒钟过去了,我必须不返回任何值,这一切都会很快发生!好主意!我试试看。谢谢。。不好的。函数的第一次迭代仍然会立即返回。是,它应该立即返回。我的意思是编写在注释区域返回false时要运行的代码。这是一个问题,因为我所谓的“myFunc”实际上是一个jQuery验证程序函数。你看,这个函数在提交表单时被调用。在某些情况下,我需要表单在提交之前等待服务器的响应。所以,在得到响应之前,或者如果6秒钟过去了,我不能返回任何值,而这一切发生得更快