こんにちは。
配列型オブジェクト(下記)に対して指定関数のforEach
ループ実行を行いました1。
- 配列(array)
- 配列型(array-like)
- 反復可能型(iterable)
[...array_like].forEach(doFunc);
Array.from(array_like).forEach(doFunc);
for (const e of array_like) {doFunc(e)};
await 動作としたい場合
ただしループ内で個々をawait
動作としたい場合は下記のようにするとのことです2(forEach
は使わずに)。
-
reduce
利用 -
for ( of )
利用
array_like.reduce(async (p, e) => {
await p || await wait();
doFunc(e);
}, 0);
(async () => {
for (const e of array_like) {
await wait();
doFunc(e);
}
})();
// const wait = () => new Promise(resolve => setTimeout(resolve, 0));
-
\
forEach
は配列を対象としますので、そうではない配列型オブジェクトに対しては、array_like.forEach(doFunc)
とは書けません。 ↩