欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JavaScript -- es6新增数组方法(2)

程序员文章站 2023-12-22 23:10:04
...

1. arr.reduce()

迭代数组的所有项,累加器,数组中的每个值(从左到右)合并,最终计算为一个值

参数1:
callback:

previousValue 必选 --上一次调用回调返回的值,或者是提供的初始值(initialValue)
currentValue 必选 --数组中当前被处理的数组项
index 可选 --当前数组项在数组中的索引值
array 可选 --原数组

参数2:
initialValue: 可选 --初始值

实行方法:回调函数第一次执行时,preValue 和 curValue 可以是一个值,如果 initialValue 在调用 reduce() 时被提供,那么第一个 preValue 等于 initialValue ,并且curValue 等于数组中的第一个值;如果initialValue 未被提供,那么preValue 等于数组中的第一个值.

let arr = [0,1,2,3,4]
let arr1 = arr.reduce((preValue, curValue) => 
    preValue + curValue
)
console.log(arr1)    // 10
let arr2 = arr.reduce((preValue,curValue)=>preValue + curValue,5)
console.log(arr2)    // 15

2.arr.find()

找到第一个符合条件的数组成员

let arr = [1,2,3,4,5]
let arr1 = arr.find((value, index, array) =>value > 2)
console.log(arr1)   // 3

3. arr.findIndex()

找到第一个符合条件的数组成员的索引值

let arr = [1,2,3,4,5]
let arr1 = arr.findIndex((value, index, array) => value > 3)
console.log(arr1)  // 3

4. arr.fill(target, start, end)

使用给定的值,填充一个数组,ps:填充完后会改变原数组

参数:

target -- 待填充的元素
start -- 开始填充的位置-索引
end -- 终止填充的位置-索引(不包括该位置)`在这里插入代码片`
let arr = [1,2,3,4,5]
let arr1 = arr.fill(5)
console.log(arr1)  // [5, 5, 5, 5, 5]
console.log(arr)   // [5, 5, 5, 5, 5]
let arr2 = arr.fill(5,2)
console.log(arr2)
let arr3 = arr.fill(5,1,3)
console.log(arr3)

5. arr.includes()

判断数中是否包含给定的值

let arr = [1,2,3,4,5]
let arr1 = arr.includes(2)  
console.log(arr1)   // ture
let arr2 = arr.includes(0) 
console.log(arr2)    // false
let arr3 = [1,2,3,NaN].includes(NaN)
console.log(arr3)  // true

7. arr.keys()

遍历数组的键名

let arr = [1,2,3,4,5]
let arr2 = arr.keys()
for (let key of arr2) {
    console.log(key);   // 0,1,2,3,4
}

8. arr.values()

遍历数组键值

let arr = [1,2,3,4,5]
let arr1 = arr.values()
for (let val of arr1) {
     console.log(val);   // 1,2,3,4,5
}

9. arr.entries()

遍历数组的键名和键值

let arr = [1,2,3,4,5]
let arr1 = arr.entries()
for (let i of arr1) {
    console.log(i); 
}

结果:
JavaScript -- es6新增数组方法(2)

上一篇:

下一篇: