1.1 Syntax
JavaScript syntax is modeled on Java syntax, Java syntax, in turn, is
modeled on C and C++ syntax. Therefore, C, C++, and Java programmers
should find that JavaScript syntax is comfortably familiar.
1.1.1 Case sensitivity
JavaScript is a case-sensitive language. All keywords are in
lowercase. All variables, function names, and other identifiers must
be typed with a consistent capitalization.
1.1.2 Whitespace
JavaScript ignores whitespace between tokens. You may use spaces,
tabs, and newlines to format and indent your code in a readable
fashion.
1.1.3 Semicolons
JavaScript statements are terminated by semicolons. When a statement
is followed by a newline, however, the terminating semicolon may be
omitted. Note that this places a restriction on where you may legally
break lines in your JavaScript programs: you may not break a
statement across two lines if the first line can be a complete legal
statement on its own.
1.1.4 Comments
JavaScript supports both C and C++ comments. Any amount of text, on
one or more lines, between /* and
*/ is a comment, and is ignored by JavaScript.
Also, any text between // and the end of the
current line is a comment, and is ignored. Examples:
// This is a single-line, C++-style comment.
/*
* This is a multi-line, C-style comment.
* Here is the second line.
*/
/* Another comment. */ // This too.
1.1.5 Identifiers
Variable, function, and label names are JavaScript
identifiers. Identifiers are composed of any
number of letters and digits, and _ and
$ characters. The first character of an identifier
must not be a digit, however. The following are legal identifiers:
i
my_variable_name
v13
$str
1.1.6 Keywords
The following keywords are part of the JavaScript language, and have
special meaning to the JavaScript interpreter. Therefore, they may
not be used as identifiers:
break do if switch typeof
case else in this var
catch false instanceof throw void
continue finally new true while
default for null try with
delete function return
JavaScript also reserves the following words for possible future
extensions. You may not use any of these words as identifiers either:
abstract enum int short
boolean export interface static
byte extends long super
char final native synchronized
class float package throws
const goto private transient
debugger implements protected volatile
double import public
In addition, you should avoid creating variables that have the same
name as global properties and methods: see the Global, Object, and
Window reference pages. Within functions, do not use the identifier
arguments as an argument name or local variable
name.
|