一. 前言
- 在对数组或对象进行遍历时,我们经常会使用到两种方法:
for in和for of - 它们两者都可以用于遍历,不过
for in遍历的是数组的索引或对象的属性名(index),而for of遍历的是数组值或元素字段(value)
二. for in
1. for in循环对象
for in 用于循环对象时, key为对象中的每个属性名 使用 对象名[key]可以访问对象中对应的属性值
let obj = { name: "张三", age: 28 }
for (const key in obj) {
console.log(key); // name age
console.log(obj[key]); //张三 28
}
2. for in循环数组
for in 用于循环数组时, key为数组中的每个下标 , 使用 数组名[key]可以访问数组中对应的值
let arr = [1, 5, 8, 9, 19, 85]
for (const key in arr) {
console.log(key); // 0 1 2 3 4 5
console.log(arr[key]); // 1 5 8 9 19 85
}
三. for of
1. for of循环数组
for of 用于数组的循环时 , iterator是数组的每个值
let arr = [1, 5, 8, 9, 19, 85]
for (const iterator of arr) {
console.log(iterator); //1 5 8 9 19 85
}
2. for of循环字符串
for of 用于字符串的循环时 , iterator是字符串的每个字段
let str = '这是一段文字'
for (const iterator of str) {
console.log(iterator); // 这 是 一 段 文 字
}