Introduction

JavaScript is a cross-platform, object-oriented scripting language. It is a small and lightweight language. Inside a host environment (for example, a web browser), JavaScript can be connected to the objects of its environment to provide programmatic control over them.

if (true) { var x = 5; } console.log(x); // 5

JavaScript contains a standard library of objects, such as Array, Date, and Math, and a core set of language elements such as operators, control structures, and statements. Core JavaScript can be extended for a variety of purposes by supplementing it with additional objects; for example:

What you should already know

This guide assumes you have the following basic background:

JavaScript and Java

JavaScript and Java are similar in some ways but fundamentally different in some others. The JavaScript language resembles Java but does not have Java's static typing and strong type checking. JavaScript follows most Java expression syntax, naming conventions and basic control-flow constructs which was the reason why it was renamed from LiveScript to JavaScript.

if (true) { let y = 5; } console.log(y); // ReferenceError: y is not defined

In contrast to Java's compile-time system of classes built by declarations, JavaScript supports a runtime system based on a small number of data types representing numeric, Boolean, and string values.

JavaScript also supports functions without any special declarative requirements. Functions can be properties of objects, executing as loosely typed methods.

JavaScript is a very free-form language compared to Java. You do not have to declare all variables, classes, and methods.

Hello world

To get started with writing JavaScript, open the Scratchpad and write your first "Hello world" JavaScript code:

function greetMe(yourName) { alert("Hello " + yourName); } greetMe("World");

Select the code in the pad and hit Ctrl+R to watch it unfold in your browser!

Declaring variables

You can declare a variable in three ways: With the keyword var. For example,

var x = 42

This syntax can be used to declare both local and global variables. By simply assigning it a value. For example,

x = 42

This always declares a global variable. It generates a strict JavaScript warning. You shouldn't use this variant. With the keyword let. For example,

let y = 13