语句种类
类型 | 子类型 | 语法 |
---|---|---|
声明语句 | 变量声明语句 | let a = 100; |
标签声明语句 | Label: box; | |
表达式语句 | 变量赋值语句 | a = 200; |
函数调用语句 | foo() | |
属性赋值语句 | box.property = 100; | |
方法调用语句 | box.method(); | |
分支语句 | 条件分支语句 | if() {} else {} |
多重分支语句 | switch() {case n:...} | |
循环语句 | for | for(;;;){} |
for...in | for (x in x) {} | |
while | while(){} | |
do...while | do {} while(); | |
控制结构 | 继续执行子句 | continue; |
终端执行子句 | break ; | |
函数返回子句 | return; | |
异常触发子句 | throw; | |
异常捕获与处理 | try{} catch () {} finally {} | |
其他 | 空语句 | ; |
with语句 | with() {} |
if语句
if语句会自动转换为Boolean,一行可以简写,多行要加大括号
if(a > b) alert('hello world');
if(a > b) alert {
alert('hello');
alert('world');
};
if-else
if(a > b) alert {
alert('hello');
} else {
alert('byebye');
}
switch
switch (num) {
case 1 :
alert('one');
break;
case 2 :
alert('two');
break;
case 3 :
alert('three');
break;
// ...
default:
alert('byebye');
}
do...while
先执行后判断,至少执行一次
let a = 11;
do {
alert(1);
a++;
} while(a < 10);
//执行一次
while
先判断后执行,肯能一次都不执行
let a = 11;
while (a < 10) {
alert(1);
a++;
}
for
先判断,后执行。可以声明变量。
for(let i = 0; i < 10; i ++) {
console.log(i); //0-9
}
声明变量---判断---如果true执行代码—执行i++---判断...如果false跳出循环
for...in
迭代语句,可以枚举对象属性
let obj = {
a: 1,
b: 2,
c: 3
}
for(var key in obj) {
console.log(key,obj[key]);//a-1,b-2,c-3
}
break 和 continue
break立即退出循环,continue退出当前循环执行下一个循环。
for(let i = 0; i < 5; i++) {
if(i > 1) break;
document.write(i + '<br/>'); //012退出循环
}
for(let i = 0; i < 5; i++) {
if(i === 1) continue;
document.write(i + '<br/>'); //0234退出当前循环
}
with
let obj = {
a: 1,
b: 2,
c: 3
}
with (obj) { //可以省略obj.
console.log(a,b,c) //相当于obj.a... 1 2 3
}