Asynchronous JavaScript: Promises, Async/Await and AJAX - The Old Way: Asynchronous JavaScript with Callbacks