1 Function.prototype.bind = function(ctx) { 2 var fn = this; 3 return function() { 4 fn.apply(ctx, arguments); 5 }; 6 };
1 Promise.myAll = function(promiseArr) { 2 return new Promise((resolve, reject) => { 3 const ans = []; 4 let index = 0; 5 for (let i = 0; i < promiseArr.length; i++) { 6 promiseArr[i] 7 .then(res => { 8 ans[i] = res; 9 index++; 10 if (index === promiseArr.length) { 11 resolve(ans); 12 } 13 }) 14 .catch(err => reject(err)); 15 } 16 }) 17 }