Web pages, unlike native applications, are
loosely coupled, meaning that the data they display are not tightly bound to data sources and must be first
marshaled (set out in proper order) into an HTML page format before they can be presented to a
user agent on the client machine. For this reason, web pages have to be re-loaded each time a user needs to view different datasets. By using the XMLHttpRequest object to request and return data without a re-load, a programmer bypasses this requirement and makes the loosely coupled web page behave much like a tightly coupled application, but with a more variable lag time for the data to pass through a longer "wire" to the remote web browser.