for await of VS Promise.all
Yes, they absolutely are different. for await is supposed to be used with asynchronous iterators, not with arrays of pre-existing promises. Just to make clear, for await (const res of items.map(e => somethingAsync(e))) … works the same as const promises = items.map(e => somethingAsync(e)); for await (const res of promises) … or const promises = …