回答
JavaScript是祈使句和单线程的,它只是工作这样。直到function1()
完成,function2()
才会启动。
如果通过缓慢你的意思是通过AJAX异步调用一些外部服务,那么我们正在谈论。 function1()
必须提供某种回调的,这样,当异步请求完成,function2()
叫做:
function1(function2);
实现是微不足道的,例如使用jQuery:
function function1(callback) {
$.ajax({url: 'some-url'}).done(callback);
}
您必须使用一些AJAX请求。因此,AJAX完整的调用回调函数等之后:
function1 = new function(callback) {
$.ajax({...}).done(callback());
}
function1(function2);
如果你的其他后调用一个函数,那么将完成第一或者它可能是慢或快。
如果要异步调用函数,除了明显的回调方法外,它们的排序可以基于事件框架。您可以添加一个事件侦听器,并将函数1作为处理函数,并在函数2中触发该事件。
@downvoter你能不能请解释downvote留言? –
不是我的倒退,我也得到-1。似乎这里的所有答案都是downvoted,除[一](http://stackoverflow.com/a/13100082/605744)。嗯... –
- 1. jquery:等待一个函数来完成
- 2. 等待上一次函数来完成
- 3. 不要等待函数来完成
- 4. 等待jQuery的get函数来完成
- 5. 等待一个递归的jQuery函数完全完成
- 6. JQUERY - 等待window.location.href来完成
- 7. 等待QueueUserWorkItem来完成
- 8. 问题等待多个递延函数调用来完成
- 9. 的Node.js - 等待多个函数来完成
- 10. 试图等待一组NSURLConnections来完成
- 11. 等待一个函数完成多个资源调用
- 12. 在HTML中等待Javascript函数完成
- 13. 如何不等待函数完成python
- 14. 使用承诺等待函数完成
- 15. 等待函数在JavaScript中完成
- 16. Backbone Javascript:等待一个函数在运行另一个函数之前完成
- 17. 等待一个Ajax调用的数组来完成
- 18. 等待完成
- 19. 等待完成
- 20. 等待一个进程完成ThreadPool.UnsafeQueueUserWorkItem()函数内部
- 21. 如何调用一个函数,但不等待完成 - ASP.NET
- 22. 函数无需等待前一个完成而运行
- 23. 如何让一个函数等待异步调用完成?
- 24. 等待函数完成后再继续主(一个线程)
- 25. 在启动另一个之前等待函数/补间完成
- 26. jquery等待$。每个完成
- 27. 等待多个$ .getJSON完成
- 28. 等待完成几个DBMS_SCHEDULER.CREATE_JOB
- 29. 替代的setInterval是等待函数来完成
- 30. 多叉,等待第一个完成
这有什么关系? – Prasanth