悉野小楼

导航

for..of 与 for..in 语句

参考:

for ...in 遍历key, for...of遍历值

for..of 和 for..in 语句都遍历列表;但是,迭代的值不同,for..in 返回被迭代对象的键列表,而 for..of 返回被迭代对象的数字属性的值列表。

Both for..of and for..in statements iterate over lists; the values iterated on are different though, for..in returns a list of keys on the object being iterated, whereas for..of returns a list of values of the numeric properties of the object being iterated.

let list = [4, 5, 6];

for (let i in list) {
console.log(i); // "0", "1", "2",
}

for (let i of list) {
console.log(i); // 4, 5, 6
}
let pets = new Set(["Cat", "Dog", "Hamster"]);
pets["species"] = "mammals";

for (let pet in pets) {
console.log(pet); // "species"
}

for (let pet of pets) {
console.log(pet); // "Cat", "Dog", "Hamster"
}

// json只能遍历key
let json_str = '{"name": "tom", "age": 20}';
let json = JSON.parse(json_str);
for(let key in json) {
// key为键 json[key]取出值
console.log(key, json[key]);
}

posted on 2025-08-25 11:23  悉野  阅读(3)  评论(0)    收藏  举报