js中forin 和for each 的用法
原创
一、for...in循环
for...in循环在JavaScript中常用于遍历对象的属性。以下是一个使用for...in循环的示例:
const obj = {
name: '张三',
age: 30,
gender: '男'
};
for (let key in obj) {
console.log(key + ': ' + obj[key]);
}
二、for each循环
在JavaScript中,for each循环通常指的是数组的forEach方法。该方法对数组中的每个元素执行一次提供的函数。以下是一个使用for each循环的示例:
const arr = [1, 2, 3, 4, 5];
arr.forEach(function(value, index) {
console.log(index + ': ' + value);
});
三、for...in和for each的区别
for...in循环核心用于遍历对象的属性,而for each循环核心用于遍历数组的元素。以下是它们之间的一些区别:
- for...in循环可以遍历对象的所有可枚举属性,包括原型链上的属性;而for each循环仅遍历数组本身的元素。
- for each循环无法直接中断循环,而for...in循环可以使用break语句中断循环。
- for each循环无法修改数组的元素,而for...in循环可以修改对象的属性。
四、总结
在JavaScript中,for...in循环和for each循环都有各自的适用场景。凭借实际需求选择合适的循环做法,可以使代码更加简洁、高效。