for…in 枚举
循环数组
var arr1 = [1, 2, 3]
for (const i in arr1) {
console.log(i); // 下标
console.log(arr1[i]); // 数组下标所对应的元素
}
循环对象
var arr2 = { a: 1, b: 2 }
for (const key in arr2) {
console.log(key); // 对象的键
console.log(arr2[key]); // 对象的键值
}
循环字符串
var string1 = "abc";
for (const i in string1) {
console.log(i); // 索引 字符串的下标
console.log(string1[i]); // 字符串下标所对应的元素
}
// for...of迭代
迭代数组
var arr3 = [1, 2, 3]
for (const item of arr3) {
console.log(item);
}
// log 1
// log 2
// log 3
迭代字符串
var string2 = "abc"
for (const value of string2) {
console.log(value);
}
// log a
// log b
// log c
性能
for > for-of > forEach > map > for-in