c++ map 遍历_JavaScript 数据类型——Array的循环遍历

JavaScript —— 极简主义


0e0f12f8eabc7eb4fe440435b708e720.png

上一篇文章主要对数组的增、删、改、查,以及是否改变原始数组进行了归纳总结,本文将从数组的循环遍历这一维度继续归纳总结数组知识点。主要内容为:数组遍历for, for in , for of , foreach, map五种循环遍历方法的区别,以及每种方法的优缺点。

遍历性能: for循环遍历 > for…of遍历 > forEach遍历 > for…in遍历 > map遍历

喜欢的朋友可以点关注,点关注,不迷路哦~

1、for (略)

2、for in

特点:遍历的是key,即索引字符串

该方法虽然可以遍历数组,但是强烈不建议,原因有一下几点:

1)遍历的顺序有可能不是数组内部的顺序,即顺序紊乱(不确定标红的部分算不算)

2)会遍历数组内所有可枚举的属性,包括原型上的属性和方法

let arr = [1, { b: 666 }, 2, { a: 234 }];Array.prototype.name = "jony"arr.sex = 'man'Array.prototype.age = 26console.log('arr:', arr);for (let index in arr) { console.log(arr[index]) }
7d0387875caa10508c0371987a76ab6f.png

控制台输出结果

总之,遍历数组时,不要使用for in,枪毙掉!但它适合遍历对象,期待后续对象相关文章。

2、for of

特点:遍历的是值value。允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等,但普通对象不可迭代,即不能遍历普通对象

let arr = ['a', 'b', {name: 'jony'}, 'c'];for(let value of arr) { console.log(value); // a, b, {name: 'jony'}, c}

3、forEach

特点:1)会从头到尾对数组里的每个元素遍历一遍,中途不会跳出循环

2)不会生成新数组,也不改变原数组;

3)对空数组不执行回调;(不重要)

let arr = ["a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值