gpt4 book ai didi

javascript - Promise.all() 是执行一个函数数组还是当你将它们放入数组时执行?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:30:33 26 4
gpt4 key购买 nike

由于 awaitArray.mapArray.reduce 中不起作用,你可以做类似下面的事情吗?滥用 Promise.all?通常,会等待 neo4j.session()

// inside a function

const QUERY = 'MATCH (n) RETURN n'
const argsArray = [{ sample: 'sadf' }, { sample: 'sadf' }, { sample: 'sadf' }]

const runQueries = argsArray.map(obj => neo4j.session.run(QUERY, obj.sample))

await Promise.all(runQueries)
.then(results => results.forEach(result => console.log(result)))

最佳答案

Does Promise.all() execute an array of functions?

不,它是一系列的 promise

or do they execute when you put them into the array?

确切地说,当您构建 Promise 时,它​​们就会被执行。

would this be considered misuse of Promise.all?

不,这完全没问题,这实际上是 Promise.all 的重点。

但是你可能会这样做(一个接一个而不是并行执行):

(async function(){

for(const obj of argsArray)
console.log( await neo4j.session.run(QUERY, obj.sample));

})()

关于javascript - Promise.all() 是执行一个函数数组还是当你将它们放入数组时执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46941593/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com