数组的pop,push,shift,unshift()分别是什么

2020-07-25  本文已影响0人  泡杯感冒灵

功能

pop 删除并返回数组的最后一个元素
push 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
shift 删除并返回数组的第一个元素
unshift 向数组的开头添加一个或更多元素,并返回新的长度。

数组的其他方法

concat 连接两个或多个数组,并返回结果

[1,2].concat([3,4])
[1, 2, 3, 4]
[1,2].concat([3,4],[5,6])
[1, 2, 3, 4, 5, 6]

reverse 颠倒数组中元素的顺序

[1,2,3,4,5].reverse()  //  [5, 4, 3, 2, 1]

sort 对数组的元素进行排序

[3,5,2,1,4].sort()  // [1, 2, 3, 4, 5]

slice 返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

// 第一个参数是 必需。规定从何处开始选取;第二个参数,可选。规定从何处结束选取

[1,2,3,4,5].slice(1,3)   // [2,3]

splice 方法向/从数组中添加/删除项目,然后返回被删除的项目数组。该方法会改变原始数组。
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

var arr = ['a','b','c']
arr.splice(1)  //从下标为1的地方开始删除元素,一直删除到最后
arr  //['a']   原数组被修改,只剩下了一个元素

var arr2 = ['a','b','c','d']
arr2.splice(2,0,'e','f')   // ["a", "b", "e", "f", "c", "d"]  这句话的意思是,从下标为2的地方开始插入元素,因为0标识一个元素都不删除,后边的`e`,`f`为插入的元素

arr2.splice(3,3)  //  ["f", "c", "d"] 这里的意思是,从下标为3的位置开始删除元素,删除3个元素

数组的纯函数方法,有哪些?

纯函数:1.不会改变原数组(没有副作用);2.返回一个数组

const arr = [10, 20, 30, 40]

const arr1 = arr.concat([50, 60])
console.log(arr1)  // [10, 20, 30, 40, 50, 60]
console.log(arr)  // [10, 20, 30, 40]

// map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
const arr2 = arr.map(num => num * 10)
console.log(arr2)   //[100, 200, 300, 400]
console.log(arr)   // [10, 20, 30, 40]

const arr3 = arr.filter(num => num > 25)
console.log(arr3)    //  [30, 40]
console.log(arr)    // [10, 20, 30, 40]

const arr4 = arr.slice(1, 2)
console.log(arr4)  // [20]
console.log(arr)   // [10, 20, 30, 40]

非纯函数

  1. pop
  2. push
  3. shift
  4. unshift
  5. splice
  6. sort
  7. reverse
    ...
上一篇下一篇

猜你喜欢

热点阅读