Table of contents
- 1. About this Reference
- 2. Global Objects
- 2.1. Standard global objects (by category)
- 2.1.1. General-purpose constructors
- 2.1.2. Typed array constructors
- 2.1.3. Error constructors
- 2.1.4. Non-constructor functions
- 2.1.5. Other
- 2.2. Standard global objects (alphabetically)
- 2.1. Standard global objects (by category)
- 3. Functions and function scope
- 4. Statements
- 5. Operators and other keywords
- 6. Comments
- 7. E4X (extension)
- 8. Appendix A - Reserved Words
- 9. Appendix B - Deprecated Features
Global Objects
Standard global objects (by category)
General-purpose constructors
Typed array constructors
- ArrayBuffer
- Float32Array
- Float64Array
- Int16Array
- Int32Array
- Int8Array
- Uint16Array
- Uint32Array
- Uint8Array
- Uint8ClampedArray
Error constructors
- Error
- EvalError
- InternalError
- RangeError
- ReferenceError
- StopIteration
- SyntaxError
- TypeError
- URIError
Non-constructor functions
- decodeURI
- decodeURIComponent
- encodeURI
- encodeURIComponent
- eval
- isFinite
- isNaN
- parseFloat
- parseInt
- uneval
Other
Standard global objects (alphabetically)
- Array
- ArrayBuffer
- Boolean
- Date
- decodeURI
- decodeURIComponent
- encodeURI
- encodeURIComponent
- Error
- eval
- EvalError
- Float32Array
- Float64Array
- Function
- Infinity
- Int16Array
- Int32Array
- Int8Array
- isFinite
- isNaN
- Iterator
- JSON
- Math
- NaN
- Number
- Object
- parseFloat
- parseInt
- RangeError
- ReferenceError
- RegExp
- StopIteration
- String
- SyntaxError
- TypeError
- Uint16Array
- Uint32Array
- Uint8Array
- Uint8ClampedArray
- undefined
- uneval
- URIError
Other objects in the global scope are either created by the user script or provided by the host application. The host objects available in Gecko-based browsers are documented in the Gecko DOM Reference.
For more information about the distinction between the DOM and core JavaScript, see The DOM and JavaScript article.
Statements
- block
- A block statement is used to group zero or more statements. The block is delimited by a pair of curly brackets.
break- Terminates the current loop, switch, or label statement and transfers program control to the statement following the terminated statement.
const- Declares a read-only, named constant.
continue- Terminates execution of the statements in the current iteration of the current or labelled loop, and continues execution of the loop with the next iteration.
debugger- Invokes any available debugging functionality. If no debugging functionality is available, this statement has no effect.
do...while- Creates a loop that executes a specified statement until the test condition evaluates to false. The condition is evaluated after executing the statement, resulting in the specified statement executing at least once.
export- Allows a signed script to provide properties, functions, and objects to other signed or unsigned scripts. This feature is not in ECMA-262, Edition 3.
for- Creates a loop that consists of three optional expressions, enclosed in parentheses and separated by semicolons, followed by a statement executed in the loop.
for...in- Iterates over the enumerable properties of an object, in arbitrary order. For each distinct property, statements can be executed.
for...of- Iterates over iterable objects (including arrays, array-like objects, iterators and generators), invoking a custom iteration hook with statements to be executed for the value of each distinct property.
for each...in- Iterates a specified variable over all values of object's properties. For each distinct property, a specified statement is executed.
function- Declares a function with the specified parameters.
if...else- Executes a statement if a specified condition is true. If the condition is false, another statement can be executed.
import- Allows a script to import properties, functions, and objects from a signed script that has exported the information.
- label
- Provides a statement with an identifier that you can refer to using a
breakorcontinuestatement. let- Declares a block scope local variable, optionally initializing it to a value.
return- Specifies the value to be returned by a function.
switch- Evaluates an expression, matching the expression's value to a case label, and executes statements associated with that case.
throw- Throws a user-defined exception.
try...catch- Marks a block of statements to try, and specifies a response, should an exception be thrown.
var- Declares a variable, optionally initializing it to a value.
while- Creates a loop that executes a specified statement as long as the test condition evaluates to true. The condition is evaluated before executing the statement.
with- Extends the scope chain for a statement.
Operators and other keywords
- Arithmetic Operators
-
(
+,-,*,/,%,++,--, unary-, unary +) - Assignment Operators
-
(
=, *=, /=, %=, +=, -=, <<=, >>=, >>>=, &=, ^=, |=) - Bitwise Operators
-
(
&,|,^,~,<<,>>,>>>) - Comparison Operators
-
(
==,!=,===,!==,>,>=,<,<=) - Logical Operators
-
(
&&,||,!) - String Operators
-
(
+and+=) - Member Operators
-
(
object.propertyandobject["property"]) - Special Operators
-
- Conditional Operator
-
(
condition ? ifTrue : ifFalse) - Comma Operator
-
(
,) - delete Operator
-
(
delete) - function Operator
-
(
function) - get Operator
-
(
get) - in Operator
-
(
in) - instanceof Operator
-
(
instanceof) - let Operator
-
(
let) - new Operator
-
(
new) - set Operator
-
(
set) - this Operator
-
(
this) - typeof Operator
-
(
typeof) - void Operator
-
(
void) - yield Operator
-
(
yield)
- Operator Precedence
- Operator precedence defines the order in which operators are evaluated.
Comments
- Code comments (
//and/* */)


Mozilla Developer Network