数组的遍历方法

数组的遍历方法有以下几种

forEach:方法用于调用数组的每个元素,并将元素传递给回调函数。没有任何返回值.

语法: array.forEach(function(value, index, arr));

function(currentValue, index, arr) 是回调函数必须得.

   var arr = ["a","b",255,512,"hello"];

        var a = arr.forEach(function(value,index){
             console.log(value);
             console.log(index);
        })
        console.log(a);

map:map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值

语法: array.map(function(value,index,arr))

function(currentValue, index, arr) 是回调函数必须得.

        var arr2 = [4,5,6,7,8]
        var b = arr2.map(function(value,index){
//            console.log(value)
//            console.log(index)
            return value+value*0.3;
        })
        console.log(arr2)
        console.log(b)
filter

语法:array.filter(function(currentValue,index,arr))

filter() 方法创建一个新的数组,是将函数执行一遍,只有在布尔值为true的时候才会返回该数据

function(value, index, arr) 是回调函数必须得.

        var c = arr2.filter(function(value,index){
            console.log(value)
            console.log(index)
            return value <= 5
        })
        console.log(c)
        
find和findIndex(断言函数)

find 找到满足条件的元素后,直接返回,且停止循环.如果没有满足条件的则返回undefined.

findIndex 则返回第一个匹配元素的索引

1 获取数组中年龄大于 18 的第一个元素

    var ages = [3, 20, 10, 18];
    // var res6 = ages.find(function (v) {
    //   console.log(v);

    //   return v > 18;
    // });
    // console.log(res6);

    var res7 = ages.findIndex(function (v) {
      return v > 18;
    });
    console.log(res7);
some

用于检测数组中的元素是否满足指定条件,有一个满足则返回true,没有满足的返回false

    var ages = [3, 10, 18, 20];
    var res8 = ages.some(function (v) {
      return v > 118;
    });
    console.log(res8);
every()

+ 语法: 数组.every(function (item, index, arr) {}) 判断数组内是否每一个都满足条件

返回值: 是一个布尔值: 如果为 true, 说明数组中每一个都满足条件;如果为 false, 说明数组中至少有一个不满足条件

注意: 以 return 的形式书写 判断条件

var arr = [ 100, 200, 300, 400, 500 ]
console.log('原始数组 : ', arr)
var res = arr.every(function (item) {
  console.log(item)
  return item > 100
})
console.log('返回值 : ', res)
reduce

接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值

array.reduce(function(total, currentValue), ini tialValue)

total 计算结束后的返回值

currentValue 当前元素

initialValue 初始值,传给函数的初始值

    var ages = [3, 10, 18, 20];
    var sum = ages.reduce((x, y) => {
      return x + y
    }, 0)
    console.log(sum);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值