async
functions and the await
operator. The former allows standard functions to implicitly behave asynchronously with promises, whereas the latter can be used inside async
functions to wait for promises before the function continues. This makes chaining promises simpler and easier to read.