前端数组常用方法以及解释(手动整理)

Array about:

​ 判断数组:

Array.isArray()
arr instanceof Array
数组方法:

arr.push() 向数组最后一位添加一个或多个元素,返回数组新长度 改变原数组
arr.pop() 删除数组最后一位,返回被删除的元素 改变原数组
arr.unshift() 向数组第一位添加一个或多个元素,返回数组新长度 改变原数组
arr.shift() 删除数组第一位元素,并返回被删除的元素,改变元素组
arr.reverse() 数组反转 返回新数组 改变原数组
arr.concat() 拼接数组或者元素 返回新数组 不会改变原素组
arr.sort(fn) 数组排序 里边传function return a-b是从升序
arr.slice(startIndex,[endIndex])从开始索引截取到结束索引(不包含结束索引)不会改变原素组 返回被截取元素组成的数组
arr.splice(startIndex,[length],[ele,elen…])从startIndex开始删除指定length个,[也可删除并添加多个元素] 并返回被删除的元素组成的数组 会改变原素组
arr.flat()数组展平默认1层也可以传入无限(Infinity) 返回被展平的数组 此方法会移除数组里的空项 不会改变原数组
arr.join(分隔符) 将数组转化成指定分隔符的字符串(默认 ,)并返回字符串 不会改变原数组
arr.indexOf(ele) 查找ele第一次在数组出现的位置并返回索引 如果没有找到 则返回-1
arr.lastIndexOf()查找ele最后一次在数组出现的位置并返回索引 如果没有找到 则返回-1
arr.includes(ele,[指定位置开始找 为负值则整个数组搜索])检查数组[从指定索引开始]是否包含指定元素
数组的遍历:

arr.forEach((item,index,[arr])=>{},[this]) 单纯遍历数组
arr.some((item,index,[arr])=>{},[this]) 判断数组元素是否满足条件 如果有一个满足 则停止遍历返回true
arr.every((item,index,[arr])=>{},[this]) 判断数组所有元素是否都满足条件 如果有一个不满足 则停止遍历返回false
arr.map((item,index,[arr])=>{},[this]) 对数组每一个元素进行加工 并返回加工好的数组 改变this指向的时候不要用箭头函数!!!
arr.filter((item,index,[arr])=>{},[this]) 过滤出满足条件的元素组成的数组并返回加工好的数组

arr.reduce(function(previousValue, currentValue, currentIndex, array) { /* … */ }, initialValue)
方法对数组中的每个元素按序执行一个由您提供的 reducer 函数,每一次运行 reducer 会将先前元素的计算结果作为参数传入,最后将其结果汇总为单个返回值。
第一次执行回调函数时,不存在“上一次的计算结果”。如果需要回调函数从数组索引为 0 的元素开始执行,则需要传递初始值。否则,数组索引为 0 的元素将被作为初始值 initialValue,迭代器将从第二个元素开始执行(索引为 1 而不是 0)。
一个“reducer”函数,包含四个参数:
previousValue:上一次调用 callbackFn 时的返回值。在第一次调用时,若指定了初始值 initialValue,其值则为 initialValue,否则为数组索引为 0 的元素 array[0]。
currentValue:数组中正在处理的元素。在第一次调用时,若指定了初始值 initialValue,其值则为数组索引为 0 的元素 array[0],否则为 array[1]。
currentIndex:数组中正在处理的元素的索引。若指定了初始值 initialValue,则起始索引号为 0,否则从索引 1 起始。
array:用于遍历的数组。
initialValue 可选
作为第一次调用 callback 函数时参数 previousValue 的值。若指定了初始值 initialValue,则 currentValue 则将使用数组第一个元素;否则 previousValue 将使用数组第一个元素,而 currentValue 将使用数组第二个元素。

返回值
使用“reducer”回调函数遍历整个数组后的结果。

相关推荐

  1. 前端数组方法以及解释手动整理

    2024-04-11 22:26:01       14 阅读
  2. 前端见30个bug以及解决方法

    2024-04-11 22:26:01       31 阅读
  3. 前端开发函数整理

    2024-04-11 22:26:01       34 阅读
  4. 前端 js 经典:数组方法总结

    2024-04-11 22:26:01       17 阅读
  5. 数据库语法大全整理,包含名词解释

    2024-04-11 22:26:01       32 阅读
  6. ES6 数组方法

    2024-04-11 22:26:01       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-11 22:26:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-11 22:26:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-11 22:26:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-11 22:26:01       20 阅读

热门阅读

  1. 汽车传感器介绍

    2024-04-11 22:26:01       13 阅读
  2. 深入理解C语言:函数栈帧的秘密

    2024-04-11 22:26:01       17 阅读
  3. Spring的Bean标签配置IOC和依赖注入详解

    2024-04-11 22:26:01       14 阅读
  4. 如何用C++判断一个系统是16位、32位还是64位?

    2024-04-11 22:26:01       16 阅读
  5. 何为C++中的协变

    2024-04-11 22:26:01       14 阅读
  6. MySQL中 not in 和 not exists 区别

    2024-04-11 22:26:01       15 阅读
  7. 分布式任务调度:架构、原理与实践

    2024-04-11 22:26:01       15 阅读