CNode

generator co函数问题

问答
Ooyosc发布于10 年前最后回复10 年前9 回复4325 浏览0 收藏

想问下 function test(){ return Promise.all(arrayName);//arrayName是一个有多个Promise的数组 } 为什么yield * test()不行呢,这个是什么原因呢,求解决办法

查看回复

回复 (9)

M
magicdawn#1·10 年前

yield * 可能会被删除, 不要使用这个...

A
alsotang#2·10 年前
引用 magicdawnyield 可能会被删除, 不要使用这个...

@magicdawn 赞同。尽可能使用 yieldyield 的使用场景比 yield * 广,而且在 co 中可以涵盖 yield * 的场景,这一块性能的话,我觉得是可以忽略的。

H
huangshaohui#3·10 年前

你要保证数组里的promise都resolve

O
oyosc#4·10 年前

问题解决了,这个是因为Promise.all返回的是一个处理了的Promise

A
alsotang#6·10 年前
引用 magicdawn@alsotang 上次面试有人告诉我已经被删除了 是真的么

@magicdawn 不知道新版 v8 噢,我不用那东西的,但知道是干嘛的

A
alsotang#7·10 年前
O
oyosc#9·10 年前

好吧,刚看了co源码,确实不需要这个东西...

参与回复
登录后即可参与回复。登录