Most often Promises are used to ease working with asynchronous tasks. Sometimes, we deliberately do some things asynchronously to avoid overloading the working thread as there is only one thread per tab. There's no need for Promises when things that are small or that can be handled by a Web Worker.