1. for-in语句。
精准迭代语句,用于枚举对象属性。
如果要迭代的对象是undefined或者null,ES5对它不抛出错误,但是也不执行循环体。
所以建议在for-in之前,先确认该对象不是undefined或null。也可使用对象的propertyIsEnumerable(propertyName)方法。
for (var property in expression){ //这里的var不是必要的,但是为了保证使用局部变量,建议这里使用var
statement; //每次循环都会将expression的属性赋给property,属性赋予顺序不可预测。
}
2.switch语句。
switch中比较的值可以使用任何数据类型;每个case的值不一定是常量,可以是变量,甚至是表达式。
在比较时使用的是全等操作符,因此不会发生类型转换。
3.with语句。
作用是将代码的作用域设置到一个特定的对象中。例如,
var qs=location.search.substring(1);
var hostName=location.hostname;
用with语句可改写为:
with(location){
var qs=search.substring(1);
var hostName=hostname;
}
4.if语句。
5.do-while语句。
6.while语句。
7.for语句。
8. label语句。
9.break和continue语句。
break是退出整个循环;continue是退出当前这一层循环。
break和continue都可以与label语句联合使用,常用在嵌套循环的场合下。
网友评论