for-in语句
2022-03-17 本文已影响0人
5cc9c8608284
for-in语句是一种严格的迭代语句,用于枚举对象中的非符号键属性,语法如下:
for(property in expression) statement
案例:
for(const propName in window){
console.log(propName)
}
这个例子使用for-in循环显示了BOM对象window的所有属性,每次执行循环都会给变量propName赋予一个window对象的属性作为值,直到window的所有属性都被枚举一遍,这里控制语句中的const不是必须的,但是为了确保这个变量不被修改,这里推荐使用const。
再看一个例子:
//定义了一个普通对象
let obj = {
name: "zhangsan",
age: 18,
sex: "male",
};
for (const key in obj) {
console.log(key, obj[key]);
}
打印结果如下:
for-in.png
ECMAScript中的对象的属性是无序的,因此for-in语句不能保证返回对象属性的顺序,换句话说,所有可枚举的属性都会被返回一次,但返回的顺序可能因浏览器而异。
如果for-in循环要迭代的变量是null或undefined,则不执行循环体。