javascript数组的几种遍历方式

12 篇文章 1 订阅
4 篇文章 0 订阅

数组遍历

  1. for循环
  2. for...of
  3. forEach
  4. for...in

我自己在处理数组数据时有时候会出现“for...in   for...of,查查分不清楚”的情况,趁着看js  MDN文档的功夫,就来记录一下数组遍历的几种方式。

参考文档

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/A_re-introduction_to_JavaScript

var array = [
    {name:"赵云",age:18},
    {name:"张飞",age:19},
    {name:"孙悟空",age:500},
    {name:"曹操",age:100}
];
Array.prototype.sex={
    name:"猪八戒",
    age:108
}
console.log(array);

//第一 for循环
console.log("-------------for循环------------");
for(var i = 0;i<array.length;i++){
    console.log(`第${i+1}个是${array[i].name},今天${array[i].age}岁了`);
}
//for...of  遍历的是每一项元素
console.log("---------for...of---------------");
for(var item of array){
    console.log(`第${array.indexOf(item)+1}个是${item.name},今天${item.age}岁了`);
}
//forEach
console.log("--------------forEach----------------------");
array.forEach(function(cur){//function 可以有三个参数,顺序function(cur,index,array)。cur当前元素,index索引,array遍历的数组
    console.log(`第${array.indexOf(cur)+1}个是${cur.name},今天${cur.age}岁了`);
})
//for... in  遍历的是索引
console.log("--------------for... in----------------------");
for(var item in array){
    console.log(`第${(item)}个是${array[item].name},今天${array[item].age}岁了`);
}

运行结果贴图:

总结:

当输出array的时候,并不会把挂在prototype上的sex属性输出,所以前三种遍历方式是符合的。

一般并不推荐使用for...in遍历数组,因为如果在开发过程中其他小伙伴直接在Array.prototype 上添加了新的属性,例如例子中的sex,那么在遍历的时候也会将它展示出来,而一般情况下是不需要显示的。

当然如果你需要展示出当前对象所有的内置属性,就可以用这个方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值