首页 > 解决方案 > 解析一个数组并在另一个数组中添加元素并返回新数组

问题描述

我想根据另一个数组添加元素数组。我用 Javascript 做这样的事情,但结果总是空的:

list2 = []

list1.forEach(element => { 
  doSomething1()
    .then( something1 => { return doSomething2(something1) } )
    .then( something2 => { return doSomething3(something2) } )
    .then( something3 => if (something3 != null) { list2.push(element) } )

})

console.log(list2) // always empty

你能帮助我吗?

标签: javascriptarrays

解决方案


比你的情况很可能永远不会解决。您可以通过在表达式上方添加 console.log 进行调试,并查看是否满足任何条件。否则代码看起来很好。

如果你的 forEach 回调是异步的,你必须确保你创建了一个 Promise 数组并等待它们全部解决(等待 Promise.all(...))。


推荐阅读