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

数组的 pop push unshift shift

  • 功能是什么?
  • 返回值是什么?
  • 是否对原数组造成影响?
const arr = [10, 20, 30, 40]  
  
// pop  
const popRes = arr.pop()  
console.log(popRes, arr) // 40 [10, 20, 30]  
  
  
// shift  
const shiftRes = arr.shift()  
console.log(shiftRes, arr) // 10 [20, 30, 40]  
  
// push  
const pushRes = arr.push(50) // 返回 length  
console.log(pushRes, arr) // 5 [10, 20, 30, 40, 50]  
  
// unshift  
const unshiftRes = arr.unshift(5) // 返回 length  
console.log(unshiftRes, arr) // 5 [5, 10, 20, 30, 40]  

数据的 API,有哪些是纯函数?(纯函数:1、不改变原数组;2、返回一个数组)

// 纯函数:1、不改变原数组(没有副作用);2、返回一个数组  
const arr = [10, 20, 30, 40]  
  
// concat  
const arr1 = arr.concat([50,60,70])  
console.log(arr,arr1) // [10, 20, 30, 40] [10, 20, 30, 40, 50, 60, 70]  
  
// map  
const arr2 = arr.map(num=>num*10)  
console.log(arr,arr2) // [10, 20, 30, 40] [100, 200, 300, 400]  
  
// filter  
const arr3 = arr.filter(num=>num>25)  
console.log(arr,arr3) // [10, 20, 30, 40] [30, 40]  
  
// slice  
const arr4 = arr.slice(1)  
console.log(arr,arr4) // [10, 20, 30, 40]  [20, 30, 40]

非纯函数:push pop shift unshift forEach some every reduce

标签: 无

评论已关闭