This post is addressed toward people who have little to no experience with JavaScript, Node.js, or their associated libraries, but are interested in learning what they are and aren’t.
Another student at Hacker School asked me to explain the difference between Javascript,AJAX, jQuery, AngularJS, and Node.js.
Let’s start with the basics:
JavaScript
JavaScript is a programming language designed for use in a web browser. (It’s no longer a “scripting” language, nor does it have anything to do with Oracle’s “Java”, so the name is a bit misleading.)
You can code in JavaScript – it’s a full-featured language which (with one notable exception) runs in a web browser like Chrome, Firefox, or Internet Explorer. It’s usual use is to manipulate a thing called the “Document Object Model”, essentially elements on a webpage.
JavaScript executes on the client side: A website server sends the javascript to a user’s browser, and that browser interprets and runs the code. This happens inside a “sandbox”, which keeps the javascript from touching the internals of the system, whichmost of the time keeps malicious code from messing up the user’s computer.
A simple JavaScript program is
alert("hello world!");
, which on an HTML page would probably be put inside a <script>
tag to tell the user’s web browser to interpret the following as JavaScript, like: <script> alert("hello world!"); </script>
. This code makes a small alert box pop up on the user’s browser. To see this code execute, click here.
So, to recap: JavaScript is a programming language that operates in the browser, inside a security “sandbox”. It allows manipulation of elements on a webpage.