Javascript中for循环
ECMAScript中不存在块级作用域,因此在循环内部定义的变量在外部可以访问到.
<script type="text/javascript">
/*EMCAScript不存在块状作用域,因此循环内部定义的变量在循环外部可以使用和访问*/
for (var i = 0; i < 10; i++) {
document.write("i is " + i + "
");
};
document.write("target is i=" + i);
</script>
2.for infor-in是一种精确迭代语句,可以用来枚举对象的属性.
for in
<script type="text/javascript">
/* for(var fieldName in window){
document.write(fieldName + "
");
}*/
var o = {
name:"zhanght",
age:20,
sex:"男",
marrage:false
}
for(var sfield in o){
document.write(sfield + "
");
}
</script>
注意:
1.ECMAScript对象的属性是没有顺序的,因此通过for-in循环输出的属性名的顺序是不可预测的.
2.如果要迭代的对象是null或者undefined,ECMAScript5不会抛出错误,而只是不执行循环体而已.
3.建议和java处理类似,先判断是否为null或者undefined,然后在进行循环迭代.从而保证最大限度兼容.