ECMASCript定义了一组语句,也称流程掌握语句
前提语句
=============
1.if语句
if (condition) statement1 else statement2
个中的condition前提可所以恣意表达式,而且对这个表达式的求值效果不一定是布尔值。ECMAScript会自动挪用Boolean()转换函数将这个表达式的效果转换为一个布尔值。假如对condition求值的效果为true,则实行statement1,假如对condition求值效果为false,则实行statement2。这两个语句既可所以一行代码,也可所以一个代码块(引荐)。
if (condition1) statement1 else if(condition2) statement2 else statement3
2.switch语句
switch(expression) {
case value: statement
break;
case value: statement
break;
case value: statement
break;
default: statement
}
switch语句中每个case的寄义是:”假如表达式
即是这个值value
,则实行背面的语句statement”。而break会致使代码实行跳出switch语句。假如省略break关键字,就会致使实行完当前case后,继承实行下一个case。末了的default关键字则用于在表达式不婚配前面任何一种情况时,实行灵活代码(因而,也相当于一个else语句)。
例子1
var num = 25;
switch (true) {
case num < 0:
alert("Less than 0");
break;
case num >= 0 && num <= 10:
alert("Between 0 and 10");
break;
case num > 10 && num <= 20:
alert("Between 10 and 20");
break;
default:
alert("More than 20");
}
注重
:switch语句在比较值时运用的是全等操作符,因而不会发作范例转换。
轮回语句
后测试轮回语句
在对表达式求值之前,轮回体内的代码最少被实行一次。
1.do-while语句
do {
statement
} while (expression);
例子2
var i = 0;
do {
i += 2;
} while (i < 10);
alert(i);//10
前测试轮回语句
2.while语句
while(expression) statement
例子3
var i = 0;
while(i < 10) {
i += 2;
}
alert(i);//10
3.for语句
它具有在实行轮回之前初始化变量和定义轮回后要实行代码的才能。
例子4
for(var i = 0;i < 10;i++) {
alert(i);
}
迭代语句
for-in语句
for-in 语句是一种精准的迭代语句,能够用来罗列对象的属性
for (var prop in window) {
console.log(prop);
}
ECMAScript对象的属性没有递次。因而经由历程for-in轮回输出的属性名是不可展望的,详细来说,一切属性都会被返回一次,单反毁的前后序次可能会因浏览器而异。发起在运用之前,先检测确认该对象的值不是null或unedfined。
掌握实行语句
break语句
马上退出轮回
例子5
var num = 0;
for(var i = 1;i < 10;i++) {
if(i % 5 == 0) {
break;
}
num++;
}
alert(num);//4
continue语句
退出当前正在实行的轮回代码,然后最先继承轮回。
var num = 0;
for(var i = 1;i < 10;i++) {
if(i % 5 == 0) {
continue;
}
num++;
}
alert(num);//8
//实行历程明白
var num = 0;
for(var i = 1;i < 10;i++) {
console.log('i '+i);
if(i % 5 == 0) {
continue;
}
num++;
console.log('num '+num);
};
return语句
可指定返回值,也可不指定(此时返回undefined)。
1.return语句后住手并马上退出函数,return背面的语句也永久不会实行
2.return语句只能在函数体内涌现,假如不是的话会自动报语法错误