条件判断语句
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语句
立即退出循环
新闻热点
疑难解答
图片精选