遍历数组的几种方式是什么_循环遍历数组

遍历数组的几种方式是什么_循环遍历数组1.for 循环 for(j = 0; j < arr.length; j++) { } 2.forEach 最简单、最常用的数组遍历方法。它提供一个回调函数,可用于处理数组的每一个元素,默认没有返回值。 遍历开始以后无法停止。 arr.forEach(function(e){ })

遍历数组的几种方式是什么_循环遍历数组"

1.for 循环

for(j = 0; j < arr.length; j++) {
   
} 

 

2.forEach   最简单、最常用的数组遍历方法。它提供一个回调函数,可用于处理数组的每一个元素,默认没有返回值。 遍历开始以后无法停止。

arr.forEach(function(e){  
   
});

 

3.map 会映射返回一个新数组,不会改变原数组的值

var array = arr.map((item,index)=>{
    
})

 

4.filter 过滤数组,返回一个新的数组,原数组的元素执行了回调函数之后返回值若为true,则会将这个元素放入返回的数组中。

var newarr = arr.filter((item,index)=>{
   return 条件 
})
// 例子:筛选出数组arr中所有负数
var arr = [1,-2,3,4,-5]
var minus = arr.filter(function(item,index,array){
    return item < 0;
});
console.log(minus);   // [-2, -5]

 

5.some 遍历整个数组,返回值true就停止循环(返回false继续循环)返回布尔值 多用于判断数组中是否存在

arr.every(function(value, index, array){
    // arr中有几项,该匿名回调函数就需要执行几次
    // value —— 数组中的当前项
    // index —— 当前项的索引
    // array —— 原始数组
    return xxx
})

//例子:判断arr中的元素是否都为正数
var arr = [1,-2,3,4,-5]
var isEvery = arr.every(function(item, index, array){
    return item > 0
})
console.log(isEvery) // false

 

6.every 与some相反,返回false就停止循环(返回true就继续循环) 返回的是一个布尔值 多用于判断数组中是否存在之类

arr.some(function(value, index, array){
    // arr中有几项,该匿名回调函数就需要执行几次
    // value —— 数组中的当前项
    // index —— 当前项的索引
    // array —— 原始数组
    return xxx
})

//例子:判断数组arr中是否存在负数
var arr = [1,-2,3,4,-5]
var isSome = arr.some(function(item,index,array){
    return item < 0;
});
console.log(isSome);   // true

 

7.reduce 实现数据的累加

arr.reduce(function(prev, cur, index, array){
    // array——原数组
    // prev——上一次调用回调时的返回值,或者初始值init
    // cur——当前正在处理的数组元素
    // index——当前正在处理的数组元素的索引
    // init——初始值
}, init)

//求和
var sum = arr.reduce(function (prev, cur) {
    return prev + cur;
},0);

//取最大值
var max = arr.reduce(function (prev, cur) {
    return Math.max(prev,cur);
});

 

8.for..of ES6中,新增了for-of遍历方法。它被设计用来遍历各种类数组集合,例如DOM NodeList对象、Map和Set对象,甚至字符串也行。

// for-of遍历数组,不带索引,i即为数组元素
for ( let  i of arrTmp){
     console.log(i)
}
//输出 "value1" "value2" "value3"
 
// for-of遍历Map对象
let  iterable =  new  Map([[ "a" , 1], [ "b" , 2], [ "c" , 3]]);
for  ( let  [key, value] of iterable) {
   console.log(value);
}
//输出 1 2 3
 
// for-of遍历字符串
let  iterable =  "china中国" ;
for  ( let  value of iterable) {
   console.log(value);
}
//输出 "c" "h" "i" "n" "a" "中" "国"

顺带记录以下for…of…与for..in…的区别

for…in…只能获得对象的键名,不能获得键值

for…of…允许遍历获得键值

var arr = ['red', 'green', 'blue']
 
for(let item in arr) {
  console.log('for in item', item)
}
/*
  for in item 0
  for in item 1
  for in item 2
*/
 
for(let item of arr) {
  console.log('for of item', item)
}
/*
  for of item red
  for of item green
  for of item blue
*/

 

今天的文章遍历数组的几种方式是什么_循环遍历数组分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/50749.html

(0)
编程小号编程小号
上一篇 2023-09-01 21:30
下一篇 2023-09-01

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注