JavaScript Illustrated: Promises(medium.com)
medium.com
JavaScript Illustrated: Promises
https://medium.com/front-end-weekly/js-illustrated-promises-c87efb8d27a9
8 comments
Odd for an article written in Oct 8 2019, there's no mention of ES2017's `await`.
`.then()` was fine back in the day, but there's not a good reason to write new code using it in 2019.
`.then()` was fine back in the day, but there's not a good reason to write new code using it in 2019.
I don't believe that's true - I haven't had the time to test this yet, but I believe that the scenarios where a power user would prefer to have a then. Await's are definitely easier because they allow you to maintain the "procedural" feel of your code, but promises allow you to kick off several async things at once so that they take place at the same time. For instance, if I have a collection of promises that each take 10 seconds I would want them to kick off at the same time rather than sequentially - so both take 10 seconds wall clock time rather than 20 seconds one after the other. To my knowledge, the only sane way to pull this off is by using promises.all with a then. Please correct me if I'm wrong.
Very easily like this.
await Promise.all([promise, promise]);
await Promise.all([promise, promise]);
That's a good question. In addition to the sibling reply (which answers this perfectly) you can also do what I do.
Note 2: read note 1.
Array.prototype.forEachAsyncParallel = async function (iterateFunction) {
await Promise.all(this.map(iterateFunction));
}
Note 1: my app, my prototypes.Note 2: read note 1.
Aren't there still problems with error-handling in async/away?
[0] https://dev.to/craigmichaelmartin/the-problem-with-promises-...