Promise.all(); 全部(必须全部请求到)
Promise.race(); 竞速(谁快用谁)
function createPromise(url){
return new Promise(function (resolve, reject){
$.ajax({
url: url,
dataType:'json',
success(arr){
resolve(arr);
},
error(arr){
reject(arr);
}
});
}
p.then(function(){
alert('成功了');
})
alert('失败了');
})
Promise.all([
createPromise({'data/json1.txt'}),
createPromise({'data/json2.txt'}),
createPromise({'data/json3.txt'})
]).then(results => {
let [arr1,arr2,arr3] = results; // results 数组
alert('成功了');
}),err =>{
alert('失败了');
}
// JQuery 3.0+版本封装的promise
Promise.all([
$.ajax({url:'data/json1.txt',dataType:'json'}),
$.ajax({url:'data/json2.txt',dataType:'json'}),
$.ajax({url:'data/json3.txt',dataType:'json'})
]).then(results => {
let [arr1,arr2,arr3] = results; // results 数组
alert('成功了');
}),err =>{
alert('失败了');
}
网友评论