📜  js for of 循环 - Javascript (1)

📅  最后修改于: 2023-12-03 15:16:58.651000             🧑  作者: Mango

JS for of 循环 - Javascript

在JavaScript编程中,for of循环是非常有用的迭代器。它可以用于遍历可迭代对象的元素(如Array、Map、Set等)。它是ES6中引入的,可以简化代码并使代码更易于阅读。

语法

for of循环的语法如下所示:

for(variable of iterable){
    // code to be executed
}

例如,使用for of循环遍历一个数组:

let arr = [1, 2, 3, 4, 5];
for(let element of arr){
    console.log(element);
}

输出:

1
2
3
4
5
示例

下面是使用for of循环遍历不同类型数据结构的一些示例:

// 遍历数组
let colors = ["red", "green", "blue"];
for(let color of colors){
    console.log(color);
}

// 遍历集合
let mySet = new Set(["apple", "banana", "orange"]);
for(let fruit of mySet){
    console.log(fruit);
}

// 遍历Map
let myMap = new Map([[1, "one"], [2, "two"], [3, "three"]]);
for (let [key, value] of myMap) {
    console.log(key + " = " + value);
}

// 遍历字符串
let str = "Hello World!";
for (let char of str) {
    console.log(char);
}
注意事项

需要注意的是,for of循环只能用于可迭代对象,例如数组、Map、Set、字符串等。如果你用它来遍历一个普通对象,它只会遍历对象的可枚举属性。

let obj = {a: 1, b: 2, c: 3};
for(let prop of obj){
    console.log(prop);
}

输出:

TypeError: obj is not iterable

我们可以通过Object.keys方法获取可枚举属性,并使用for of循环来遍历它们:

let obj = {a: 1, b: 2, c: 3};
for(let propName of Object.keys(obj)){
    console.log(obj[propName]);
}

输出:

1
2
3
总结

对于需要遍历集合中所有元素的情况,for of循环是非常有用的。它可以提高代码的可读性,同时避免了一些常见的错误。因此,你应该在你的JavaScript编程中尽可能地使用for of循环。