Chapter 4. Variables
A
variable is a name associated with a value; we
say that the variable stores or contains the value. Variables allow
you to store and manipulate data in your programs. For example, the
following line of JavaScript assigns the value 2
to a variable named i:
i = 2;
And the following line adds 3 to
i and assigns the result to a new variable,
sum:
var sum = i + 3;
These two lines of code demonstrate just about everything you need to know about variables. However, to fully understand how variables work in JavaScript, you need to master a few more concepts. Unfortunately, these concepts require more than a couple of lines of code to explain! The rest of this chapter explains the typing, declaration, scope, contents, and resolution of variables. It also explores garbage collection and the variable/property duality.[11]
Variable Typing
An important difference between JavaScript and languages such as Java and C is that JavaScript is untyped. This means, in part, that a JavaScript variable can hold a value of any data type, unlike a Java or C variable, which can hold only the one particular type of data for which it is declared. For example, it is perfectly legal in JavaScript to assign a number to a variable and then later assign a string to that variable:
i = 10; i = "ten";
In C, C++, Java, or any other strongly typed language, code like this is illegal.
A feature related to JavaScript’s lack of typing is that the language conveniently and automatically converts values ...