Introduction
Promises help you handle tasks that take time, like loading data. They let your program wait for the task to finish without stopping everything.
When you want to load data from the internet and wait for it to arrive.
When you need to do something after a timer finishes.
When you want to run a task that might succeed or fail and handle both cases.
When you want to avoid freezing the screen while waiting for a task.