High-level programming language.
JavaScript is a high-level, interpreted programming language that is primarily used for building web-based applications. It is one of the three core technologies of the World Wide Web, alongside HTML and CSS. JavaScript enables interactive web pages and is an essential part of web applications.
JavaScript was initially created in 1995 by Brendan Eich while he was an engineer at Netscape. The language was originally named Mocha, but was quickly renamed to LiveScript, and finally to JavaScript. Despite its name, JavaScript is not directly related to the Java programming language. The name was inspired by marketing considerations, implying that JavaScript was a "younger brother" of Java.
JavaScript has evolved significantly since its inception. The standard for JavaScript, ECMAScript, was established in 1997 and has been updated regularly to add new features and capabilities.
JavaScript is a versatile language and can be used for a variety of tasks related to web development. Here are some of the key uses:
Client-side validation: JavaScript can be used to validate user inputs on the client side before they are sent to the server. This saves server processing time and provides immediate feedback to the user.
Interactive content: JavaScript allows web pages to respond to user actions quickly, making the web page feel more interactive and responsive. This includes things like dropdown menus, form submissions, animations, and more.
Asynchronous loading: JavaScript can load content asynchronously, meaning it can update parts of a web page without needing to reload the entire page. This is a key part of how modern web applications like Facebook and Gmail work.
Building web applications: With the advent of JavaScript frameworks like Angular, React, and Vue.js, JavaScript is now used to build complex web applications.
While JavaScript shares many similarities with other programming languages, there are a few key differences:
Interpreted, not compiled: JavaScript is an interpreted language, which means it is run line-by-line by the JavaScript engine in the user's browser. This is different from compiled languages like C or Java, which are converted into machine code before they are run.
Dynamic typing: JavaScript uses dynamic typing, which means you don't have to declare the data type of a variable when you create it. The JavaScript engine will figure out the data type on the fly based on how you use the variable.
First-class functions: In JavaScript, functions are first-class objects. This means that, like other objects, functions can be assigned to variables, stored in data structures, passed as arguments to other functions, and even returned as values from other functions.
Prototypal inheritance: Unlike class-based object-oriented languages like Java or C++, JavaScript uses prototypal inheritance. This means that objects can inherit properties directly from other objects.
In the next unit, we will look at how to set up your environment to start coding in JavaScript.