Book Image

The JavaScript Workshop

By : Joseph Labrecque, Jahred Love, Daniel Rosenbaum, Nick Turner, Gaurav Mehla, Alonzo L. Hosford, Florian Sloot, Philip Kirkbride
Book Image

The JavaScript Workshop

By: Joseph Labrecque, Jahred Love, Daniel Rosenbaum, Nick Turner, Gaurav Mehla, Alonzo L. Hosford, Florian Sloot, Philip Kirkbride

Overview of this book

If you're looking for a programming language to develop flexible and efficient apps, JavaScript is a great choice. However, while offering real benefits, the complexity of the entire JavaScript ecosystem can be overwhelming. This Workshop is a smarter way to learn JavaScript. It is specifically designed to cut through the noise and help build your JavaScript skills from scratch, while sparking your interest with engaging activities and clear explanations. Starting with explanations of JavaScript's fundamental programming concepts, this book will introduce the key tools, libraries and frameworks that programmers use in everyday development. You will then move on and see how to handle data, control the flow of information in an application, and create custom events. You'll explore the differences between client-side and server-side JavaScript, and expand your knowledge further by studying the different JavaScript development paradigms, including object-oriented and functional programming. By the end of this JavaScript book, you'll have the confidence and skills to tackle real-world JavaScript development problems that reflect the emerging requirements of the modern web.
Table of Contents (17 chapters)

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...