js常用的数组处理办法(合集)

 1、pop()删除数组最后一个元素,并返回这个元素。

shift()与pop()相似,但是删除数组的第一个元素

let a = [0,1,2]
let r = a.pop()
console.log(a,r) // [0,1] 2

2、push()添加一个或多个元素到数组后尾,并返回这个数组的长度。

unshift()与push()类似,但是从头部添加

let a = [0,1,2]
let r = a.push(3,4)
console.log(a) // [0,1,2,3,4]
console.log(r) // 5

3、splice(x,n, ...)从x位置开始截取,截取n个并返回被截取的元素,第三个参数是截取完了需要添加哪些元素,从x的位置开始添加

let a = [0,1,2,3]
let r = a.splice(1,2,6,7,8,9)
console.log(a) //  [0, 6, 7, 8, 9, 3]
console.log(r) // [1, 2]

4、reverse()逆转数组的顺序

5、sort()数组排序,默认从小到大,可接受一个函数

返回新数组,不改变原数组的API


1、concat()合并传入的数组,返回一个新数组。

let a = [0,1,2]
let a = [3,4]
let r = a.concat(arr2)
console.log(r) // [0,1,2,3,4]

2、slice()截取数组,支持传入两个参数,第一个从0开始,第二个结束的位置(不包括此位置的元素)(可传可不传,不传就到结束)

let arr = [1,2,3,4,5,6]
let result = arr.slice(0,3)
console.log(result) // [1, 2, 3]

3、join()将数组拼接成字符串

let arr = [1,2,3,4,5,6]
let result = arr.join('')
console.log(result) // 123456

4、indexOf()查找元素在数组中第一次出现时的索引,如果没有就返回-1

5、lastIndexOf()查找元素在数组中最后一次出现时的索引,如果没有就返回-1

数组遍历


forEach() map() filter()

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

reduce() 可以作为一个高阶函数,用于函数的 compose。

注意:reduce()对于空数组是不会执行回调函数的。

array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
initialValue:可选,用于传入函数的初始值
let arr = [1, 2, 3, 4, 5, 6];
let result = arr.reduce((sum, item) => sum+=item,10);
console.log(arr) // [1, 2, 3, 4, 5, 6]
console.log(result) // 31
posted @ 2022-03-23 14:49  清风园  阅读(411)  评论(0编辑  收藏  举报