AJAX
AJAX stands for Asynchronous JavaScript and XML and is an umbrella term for a set of technologies to communicate with servers and other sites in various formats, including JSON and XML.
Most JavaScript is synchronous, which means there is only a single thread of execution, and only one operation can be executed at a time. If browsers were truly synchronous, websites would be a drag to use, as only one resource would be able to load at a time. Imagine if the images on websites only drew one at a time after loading! Sometimes, requests can take a long time, such as to do a calculation or a complex database query. You wouldn't want your site to become non-responsive while a request is processing!
Luckily, service calls were designed to allow multiple calls to occur asynchronously. Also, in between requests being made and a response is received, the main thread of execution can continue to execute and potentially issue more service calls. This is the "A" in AJAX...