There is a better way to chain promises one after another. You can just return a promise within a then callback, like this:
resolveAfterXSeconds(2000).then((ms)=>{console.log('promise in the first then');console.log(`resolved after ${ms}`);returnresolveAfterXSeconds(1000);}).then((ms)=>{console.log(`resolved after ${ms}`)});
This way you can avoid the similarity of the "callback" hell, and you get exactly the same result in a more readable way.
First of all execute the code after 2 seconds, and then execute the code after 1 seconds.
PS: Btw, the name of the function should be resolveAfterXMilliseconds
yes, this is another solution is to chain the promises. Like I have written that the given first example is just an example I have seen and should be more an anti-pattern. If you chain a lot of promises, so what you want to run your code in a sequential manner then I think that Await / Async is the even more readable solution.
time=awaitresolveAfterXSeconds(2000);console.log(`resolved after ${time}`);time=awaitresolveAfterXSeconds(1000);console.log(`resolved after ${time}`);
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Hey Micha!
Nice post!
There is a better way to chain promises one after another. You can just return a promise within a
then
callback, like this:This way you can avoid the similarity of the "callback" hell, and you get exactly the same result in a more readable way.
First of all execute the code after 2 seconds, and then execute the code after 1 seconds.
PS: Btw, the name of the function should be
resolveAfterXMilliseconds
Lol wanted to say the same 😉 great article btw
Hey Namir,
Thanks.
yes, this is another solution is to chain the promises. Like I have written that the given first example is just an example I have seen and should be more an anti-pattern. If you chain a lot of promises, so what you want to run your code in a sequential manner then I think that Await / Async is the even more readable solution.