let aArray = [{ name: '张三', age: '23' }, { name: '李四', age: '25' }]
for (const key in aArray) {
if (Object.hasOwnProperty.call(aArray, key)) {
const element = aArray[key];
console.log("for in ", key + "===" + element.name + "====" + element.age);
//for in 0===张三====23
//for in 1 === 李四 ==== 25
}
}
for (let [index, iterator] of aArray.entries()) {
console.log("for of 带索引=", index + "====" + iterator.name + "=====" + iterator.age);
//for of 带索引= 0====张三=====23
//for of 带索引= 1====李四=====25
}
for (const iterator of aArray) {
console.log("for of 不带索引=", iterator.name + "=====" + iterator.age);
//for of 不带索引= 张三 ===== 23
//for of 不带索引= 李四=====25
}
aArray.forEach((element, index) => {
console.log("for each ", index + "===" + element.name + "====" + element.age);
//for each 0===张三====23
//for each 1===李四====25
});
for (let index = 0; index < aArray.length; index++) {
const element = aArray[index];
console.log("for ", index + "===" + element.name + "====" + element.age);
//for 0===张三====23
//for 1===李四====25
}
//for in 遍历对象不同结果不同
let obj = { name: '王五', age: '26' };
//针对数组,得到的key就是index
//针对对象,得到的key就是对象的属性
for (let i in obj) {
console.log(i + "====" + obj[i]);
//name====王五
//age====26
}