(一) 常用语句
由于如下语句比较通用, 本篇文章就不再论述
1. 条件语句
if
2. 循环语句
while,do..while,for
(二) for..in.. 语句
1. 定义
for...in..., 是一种迭代语句, 用来枚举对象的属性, 其语法定义为:
1 for (propName in expression) statement
基于在 JavaScript 开发中 "能使用局部变量, 就不要使用全局变量" 原则, 建议将 propName 属性定义为局部变量, 如下所示:
1 for (var propName in expression) statement
2. 注意点
(1)for....in 是用来枚举对象属性的, 而不是枚举对象属性值.
例子 1:
如下例子, for..in.. 输出的是数组索引 (即数组属性), 而不是数组索引值.
- var i = 5;
- var arr = new Array();
- for (var n = 0; n < i; n++) {
- arr[n] = i;
- }
- for (var propName in arr) {
- alert(propName);// 0,1,2,3,4
- }
例子 2:
如下例子, for..in.. 输出的是对象 userInfo 的属性 (name,age,address), 而不属性值 (Alan_beijing,38,china-shanghai)
- var userInfo = { name: 'Alan_beijing', age: 38, address: 'china-shanghai' };
- for (var property in userInfo) {
- alert(property);//name,age,address
- }
(2)for..in.. 枚举属性, 没有确定的顺序, 不同的浏览器, 会有所差别.
(3)ECMAScript5 版本之前, 如果被迭代对象变量值 null 或 undefined,for 语句会抛出错误, ECMAScript5 之后, 这种情况不会抛出错误, 但不执行循环体.
来源: http://www.qdfuns.com/article/51117/19e01134249b0a42fae14ad58dc2c933.html