当前位置:  开发笔记 > 编程语言 > 正文

Promise.each没有蓝鸟

如何解决《Promise.each没有蓝鸟》经验,为你挑选了1个好方法。

我需要Promise.each蓝鸟上使用.但是当我看到捆绑文件时,我实际上是在考虑使用蓝鸟.

任何人都可以使用像bluebird这样 Promise.each没有依赖关系的函数给我一个例子.



1> Benjamin Gru..:

当然:

Promise.each = function(arr, fn) { // take an array and a function
  // invalid input
  if(!Array.isArray(arr)) return Promise.reject(new Error("Non array passed to each"));
  // empty case
  if(arr.length === 0) return Promise.resolve(); 
  return arr.reduce(function(prev, cur) { 
    return prev.then(() => fn(cur))
  }, Promise.resolve());
}

或者使用现代JS(Chrome或Edge或带有转换器):

Promise.each = async function(arr, fn) { // take an array and a function
   for(const item of arr) await fn(item);
}

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有