Asynchronous Programming

JavaScript is an asynchronous programming language in Node and in the browser. In many languages such as Java, C#, Python, etc. they block the thread for I/O. What this means is when you make an HTTP/ajax call or read a text file, for example, the runtime will pause on that line of code until it is successful or a failure.
JavaScript does the opposite. Using callbacks or Promises, you basically leave a phone number to call when those operations are done, while the rest of the synchronous code keeps going. In this article, we’ll talk about why, give examples from JavaScript and compare against a blocking language, and show you some tips to help.