JavaScript的流程控制语法基本与Java类似。当控制语句部分只有一句时,{}可以省略。
if (条件) {
......
} else if (条件) {
......
} else {
......
}
if (n < 10) {
alert("SMALL");
}
if (n < 10) {
alert("SMALL");
} else {
alert("BIG");
}
if (n < 10) {
alert("SMALL");
} else if (n > 20) {
alert("BIG");
} else {
alert("NORMAL");
}
switch (表达式) {
case 表达式的值1:
...
break;
case 表达式的值2:
...
break;
default:
...
break;
}
switch (xx) {
case 1:
alert("ONE");
break;
case 2:
alert("TWO");
break;
case 3:
case 4:
alert("THREEorFOUR");
break;
default:
alert("OTHER");
break;
}
while (条件) {
......
}
n = 0;
while (n < 10) {
document.write(n);
n++;
}
do {
......
} while (条件)
n = 0;
do {
document.write(n);
n++;
} while (n < 10);
for (初始条件; 终止条件; 条件改变语句) {
......
}
for (i = 0; i < 10; i++) {
document.write(i);
}
for (variable in array) { //数组的情况下,也可这样使用
......
}
xx = new Array(3);
xx[0] = "A";
xx[1] = "B";
xx[2] = "C";
for (i in xx) {
document.write(xx[i]);
}
break; //跳到循环结束之后 break label; //跳到循环外的某个标签处
for (i = 0; i < 10; i++) {
if (i == 5) {
break;
}
document.write(i);
}
abc:
for (i = 0; i < 10; i++) {
for (j = 0; j < 10; j++) {
xx = i * 10 + j;
if (xx > 20) {
break abc;
}
document.write(xx + "<br>");
}
}continue; //跳到循环内的开始处 continue label; //跳到某个标签处(循环内外都可以)
for (i = 0; i < 10; i++) {
if (i == 5) {
continue;
}
document.write(i);
}
abc:
for (i = 0; i < 10; i++) {
for (j = 0; j < 10; j++) {
xx = i * 10 + j;
if (xx > 20) {
continue abc;
}
document.write(xx + "<br>");
}
}
with (对象) {
......
}
with (document) {
write(bgColor); write(fgColor);
}