AJAX stands for Asynchronous JavaScript And XML and represents a set of web development techniques to create asynchronous web applications.
Asynchronous means that the execution of the JavaScript code does not run in sequence. This is especially helpful and required when working with different services where data is sent to, and a response is expected for consumption. The execution of the code should not pause during this process, facilitating the firing of multiple requests at the same time. Those requests are typically categorized into POST and GET requests. For example, POST requests are required to communicate with the Qlik Engine API.
Asynchronous can sometimes be tricky to work with if you are expecting a response from a separate server or service, and you wish to execute code depending on the response. To solve this effectively, promises are typically used, which allows you to handle the response and run additional code depending on the result, and the result status.