3.1 Primary Expressions
The simplest expressions, known as primary expressions, are those that stand alone—they do not include any simpler expressions. Primary expressions in JavaScript are constant or literal values, certain language keywords, and variable references.
Literals are constant values that are embedded directly in your program. They look like these:
1.23
// A number literal
"hello"
// A string literal
/pattern/
// A regular expression literal
JavaScript syntax for number literals was covered in §2.1. String literals were documented in §2.2. The regular expression literal syntax was introduced in §2.3.5 and will be documented in detail in §9.3.
Some of JavaScript’s reserved words are primary expressions:
true
// Evalutes to the boolean true value
false
// Evaluates to the boolean false value
null
// Evaluates to the null value
undefined
// Evaluates to the undefined value
this
// Evaluates to the "current" object
We learned about true
, false
, null
and undefined
in §2.3 and
§2.4. Unlike the other keywords, this
is not a
constant—it evaluates to different values in different places in the
program. The this
keyword is used in object-oriented programming.
Within the body of a method, this
evaluates to the object on which
the method was invoked. See §3.5, Chapter 7
(especially §7.2.2), and Chapter 8 for more on this
.
Finally, the third type of primary expression is the bare variable reference:
i
// Evaluates to the value of the variable i.
sum
// Evaluates to the value of the variable sum.
When any identifier appears by itself in a program, JavaScript assumes it is a variable and looks up its value. If no variable with that name exists, an attempt to evaluate a nonexistent variable throws a ReferenceError instead.