[Contents]
[Previous] [Next] [Last]Statements are core to the JavaScript language. This section includes new statements and changed statements.
The break
statement can now include an optional label that allows
the program to break out of a labeled statement. This type of break must be in a statement
identified by the label used by break
.
break label
label
is the identifier associated with the label of the statement.
In the following example, a statement labeled checkiandj
contains a
statement labeled checkj
. If break
is encountered, the
program breaks out of the checkj
statement and continues with the remainder
of the checkiandj
statement. If break
had a label of checkiandj
,
the program would break out of the checkiandj
statement and continue at the
statement following checkiandj
.
checkiandj : if (4==i) { document.write("You've entered " + i + ".<BR>"); checkj : if (2==j) { document.write("You've entered " + j + ".<BR>"); break checkj; document.write("The sum is " + (i+j) + ".<BR>"); } document.write(i + "-" + j + "=" + (i-j) + ".<BR>"); }
labeled
, switch
The continue
statement can now include an optional label that
allows the program to terminate execution of a labeled statement and continue to the
specified labeled statement. This type of continue must be in a looping statement
identified by the label used by continue
.
continue label
label
is the identifier associated with the label of the statement.
In the following example, a statement labeled checkiandj
contains a
statement labeled checkj
. If continue
is encountered, the
program continues at the top of the checkj
statement. Each time continue
is encountered, checkj
re-iterates until its condition returns false.
When false is returned, the remainder of the checkiandj
statement is
completed. checkiandj
re-iterates until its condition returns false. When
false is returned, the program continues at the statement following checkiandj
.
continue
had a label of checkiandj
,
the program would continue at the top of the checkiandj
statement.
checkiandj : while (i<4) { document.write(i + "<BR>"); i+=1; checkj : while (j>4) { document.write(j + "<BR>"); j-=1; if ((j%2)==0); continue checkj; document.write(j + " is odd.<BR>"); } document.write("i = " + i + "<br>"); document.write("j = " + j + "<br>"); }
labeled
The do while
statement executes its statements until the test condition
evaluates to false. Statement is executed at least once.
do statement while (condition);
statement
is a block of statements that is executed at least once and is
re-executed each time the condition evaluates to true.
condition
is evaluated after each pass
through the loop. If condition
evaluates to true, the statements in
the preceding block are re-executed. When condition
evaluates to
false, control passes to the statement following do while
.
In the following example, the do loop iterates at least once and re-iterates until i is no longer less than 5.
do { i+=1 document.write(i); } while (i<5);
The export
statement allows a signed script to provide functions objects
to other signed or unsigned scripts.
export name1, name2, ..., nameN export *
nameN
is a list of functions to be exported.
*
exports all functions from the script.
Typically, information in a signed script is available only to scripts signed by the same principals. By exporting functions, a signed script makes this information available to any script (signed or unsigned). The receiving script uses the companion
import
statement to access the information.
import
The import
statement allows a script to import functions from a signed
script which has exported the information.
import objectName.name1, objectName.name2, ..., objectName.nameN import objectName.*
nameN
is a list of functions to import from the export file.
objectName
is the name of the object that will
receive the imported names. For example, if f and p have been exported, and if obj
is an object from the importing script, then
import obj.f, obj.p
will make f
and p
accessible in the importing script as
properties of obj
.
*
imports all functions from the export script.
Typically, information in a signed script is available only to scripts signed by the same principals. By exporting (using the
export
statement) properties, functions, or objects, a signed script makes this information
available to any script (signed or unsigned). The receiving script uses the import
statement to access the information.
export
A labeled statement provides an identifier that can be used with break
or continue
to indicate where the program should continue execution.
break
or continue
must be followed with a label, and the label must be the identifier of the labeled
statement containing break
or continue
.
label : statement
statement
is a block of statements. break
can be used
with any labeled statement, and continue
can be used with looping
labeled statements.
For an example of a labeled statement using break
, see
break
.
For an example of a labeled statement using continue
,
see continue
.
break
, continue
A switch
statement allows a program to evaluate an expression and
attempt to match the expression's value to a case label. If a match is found, the program
executes the associated statement.
expression
and then executes the associated statement. If no matching label is found, the program
looks for the optional default statement, and if found, executes the associated statement.
If no default statement is found, the program continues execution at the statement
following the end of switch
.
The optional break
statement associated with
each case label ensures that the program breaks out of switch
once the
matched statement is executed and continues execution at the statement following switch
.
If break
is omitted, the program continues execution at the next
statement in the switch statement.
switch (expression){ case label : statement; break; case label : statement; break; ... default : statement; }
expression
is the value matched against label
.
label
is an identifier used to match against expression
.
statement
is any statement.
In the following example, if expression
evaluates to "Bananas",
the program matches the value with case "Bananas" and executes the associated
statement. When break
is encountered, the program breaks out of switch
and executes the statement following switch
. If break
were
omitted, the statement for case "Cherries" would also be executed.
switch (i) { case "Oranges" : document.write("Oranges are $0.59 a pound.<BR>"); break; case "Apples" : document.write("Apples are $0.32 a pound.<BR>"); break; case "Bananas" : document.write("Bananas are $0.48 a pound.<BR>"); break; case "Cherries" : document.write("Cherries are $3.00 a pound.<BR>"); break; default : document.write("Sorry, we are out of " + i + ".<BR>"); }
document.write("Is there anything else you'd like?<BR>");
[Contents]
[Previous] [Next] [Last]Last Updated: 10/22/97 11:48:17
Copyright © 1997 Netscape Communications Corporation