for of和for in
时间: 2023-08-18 12:12:25 浏览: 82
for...of 和 for...in 是 JavaScript 中用于遍历数据结构的循环语句。
for...of 语句用于遍历可迭代对象(如数组、字符串、Set、Map 等)中的元素。它会迭代对象的可迭代属性,并将每个元素赋值给指定的变量。
例如,使用 for...of 遍历数组:
```javascript
const arr = [1, 2, 3, 4];
for (const element of arr) {
console.log(element);
}
```
输出:
```
1
2
3
4
```
for...in 语句用于遍历对象的可枚举属性。它会迭代对象的属性名称,并将每个属性的值赋给指定的变量。
例如,使用 for...in 遍历对象:
```javascript
const obj = { a: 1, b: 2, c: 3 };
for (const key in obj) {
console.log(key + ': ' + obj[key]);
}
```
输出:
```
a: 1
b: 2
c: 3
```
需要注意的是,for...in 循环也会遍历对象的原型链上的属性,因此需要使用 `hasOwnProperty` 方法来过滤掉继承的属性。
总结起来,for...of 适用于遍历可迭代对象的值,而 for...in 适用于遍历对象的属性。
阅读全文