如何在 JavaScript 中运行序列函数: 我有 4 个这样的函数:
function myfunction()
{
callfunction1();
callfunction2();
}
在callfunction1中:
function callfunction1()
{
callfunction3();
}
我的问题是在“myfunction”中,当我调用“callfunction1”时,callfunction1 运行并调用“callfunction3”,但是当“callfunction3”尚未完成时,“callfunction2”正在运行。无论如何都要等待“callfunction3”完成然后运行“callfunction2”?
最佳答案
JavaScript 是单线程的,callfunction2
仅在 callfunction3
完全完成后运行。
但是,如果callfunction3
包含一些AJAX或其他异步操作,那么这总是会在callfunction2
之后发生(因为单线程的原因,它无法启动异步回调直到同步任务完成之后)。任何依赖于异步函数结果的内容都必须位于函数本身中,或者由该函数调用。
关于javascript - 如何在 JavaScript 中运行序列函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17204537/