数组:内存中一块连续的存储单元,这些存储单元具有共同的名称,不同的索引(下标)。
数组5种遍历:
1、for循环
任何数组都可以使用for循环进行遍历,使用频率最高
for (let i = 0; i < arr.length; i++) {
循环体语句
}
注意:数组下标从0开始,所以计数器的初始值为0,条件为计数器<数组长度。
2、for ...in
主要用于遍历对象,数组/集合不太推荐使用,避免出现不必要的问题
for(index in 数组名){
循环体语句
}
index:表示的是数组元素的索引
注意:(1)index索引为字符串型数字,不能直接进行几何运算
(2)for...in遍历的是数组的索引(即键名)
3、for ...of
只遍历数组 ,不可遍历对象
for( value of 数组名){
循环体语句
}
value:表示数组元素
注意:它可以正确响应break,continue,return语句
4、forEach();
用于遍历数组
数组名.forEach(function(value,index){
函数体语句
})
value:表示数组元素
index:数组元素的下标
数组元素的下标:数组元素在数组中的位置编号(从0开始到数组的长度减1)
注意:对于forEach方法除非使用try/catch,否则无法中途停止循环,break或者return都无法使循环中途停止。
5. map();
实际是对数组的过滤。返回一个新的数组,原数组不变
let 新数组名 = 原数组名.map(function(item){ //item表示数组元素
函数体语句
})
注意:(1)map支持return;
(2)map() 不会对空数组进行检测;
(3)map() 不会改变原始数组;
(4)map() 返回一个新数组,数组中元素为原始数组元素调用函数处理后的值。
forEach()和map()区别:
a、forEach()和map()通常用来遍历数组元素
b、forEach()返回的是undefinded,用来遍历数组中的每一项,不影响原数组
c、map()返回一个包含已转换元素的新数组,支持return文章来源:https://www.toymoban.com/news/detail-461427.html
for...of 和 for..in的区别:
a、for...in 既可以遍历对象也可以遍历数组,in中的k一般指的是下标
b、for...of 只可以遍历数组,不可遍历对象,of中的k表示的就是元素
文章来源地址https://www.toymoban.com/news/detail-461427.html
到了这里,关于数组的5种遍历(for循环、for...in、for...of、forEach()、map()的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!