jQuery:多个AJAX/JSON并行请求对应一个回调函数处理方法$.when

时间:2021-04-03 18:57:33

我知道这些函数都是异步执行并且会延迟一段时间返回,所以我想知道是否有一种方法,可有使多个AJAX/JSON并行请求,再由单个回调处理,就像JS加载器 curljs 所做的那样。 很幸运! 通过jQuery.when, 我可以并发地加载多个异步请求,只执行一次回调!

$.when(
$.getScript('/media/js/wiki-min.js?build=21eb633'),
$.getJSON('https://developer.mozilla.org/en-US/demos/feeds/json/featured/'),
$.get('/')
).then(function(a, b, c) {
console.log(a, b, c);
});

当资源加载完成, 指定的 done 或者 then 回调会触发,因此可以知道请求已经完成。