JavaScript Array相关方法
JavaScript 标准内置对象 Array
- 常用方法
- Array.prototype.every()
- Array.prototype.some()
- Array.prototype.filter()
- Array.prototype.find()
- Array.prototype.findIndex()
- Array.prototype.indexOf()
- Array.prototype.includes()
- Array.prototype.map()
- 其他
- 1. [JavaScript数组去重](https://blog.csdn.net/pro_fan/article/details/111873072)
- 2. [JavaScript 数据拷贝](https://blog.csdn.net/pro_fan/article/details/105224881)
JavaScript的 Array 对象是用于构造数组的全局对象,数组是类似于列表的高阶对象。
常用方法
Array.prototype.every()
点击查看MDN对该方法的解释
every() 方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。
注意: 若收到一个空数组,此方法在一切情况下都会返回 true。
语法: arr.every(callback[, thisArg])
参数
- callback: 用来测试每个元素的函数,它可以接收三个参数:
- element: 用于测试的当前值。
- index(可选): 用于测试的当前值的索引。
- array(可选): 调用 every 的当前数组。
- thisArg(可选): 执行 callback 时使用的 this 值。
- callback: 用来测试每个元素的函数,它可以接收三个参数:
返回值
- 如果回调函数的每一次返回都为 true值,该方法返回 true ,否则返回 false。
Array.prototype.some()
点击查看MDN对该方法的解释
some() 方法测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值。
注意:如果用一个空数组进行测试,在任何情况下它返回的都是false。
语法: arr.some(callback(element[, index[, array]])[, thisArg])
参数
- callback: 用来测试每个元素的函数,接受三个参数:
- element: 数组中正在处理的元素。
- index 可选: 数组中正在处理的元素的索引值。
- array可选: some()被调用的数组。
- thisArg可选: 执行 callback 时使用的 this 值。
- callback: 用来测试每个元素的函数,接受三个参数:
返回值
数组中有至少一个元素通过回调函数的测试就会返回true;所有元素都没有通过回调函数的测试返回值才会为false。
Array.prototype.filter()
点击查看MDN对该方法的解释
filter() 方法创建一个新数组, 其中包含通过指定函数功能测试的所有元素。
简而言之,filter() 方法对数组进行过滤操作,返回符合条件的新数组。
注意: filter() 不会对空数组进行检测,不会改变原数组,它返回过滤后的新数组。
语法: var newArray = arr.filter(callback(element[, index[, array]])[, thisArg])
参数
- callback: 用来测试数组的每个元素的函数。返回 true 表示该元素通过测试,保留该元素,false 则不保留。它接受以下三个参数:
- element: 数组中当前正在处理的元素。
- index(可选): 正在处理的元素在数组中的索引。
- array(可选): 调用了 filter 的数组本身。
- thisArg(可选): 执行 callback 时,用于 this 的值。
- callback: 用来测试数组的每个元素的函数。返回 true 表示该元素通过测试,保留该元素,false 则不保留。它接受以下三个参数:
返回值
- 一个新的、由通过测试的元素组成的数组,如果没有任何数组元素通过测试,则返回空数组。
Array.prototype.find()
点击MDN对该方法的解释
find() 方法返回数组中满足测试函数的第一个元素的值。否则返回 undefined。
语法: arr.find(callback[, thisArg])
参数
- callback: 在数组每一项上执行的函数,接收 3 个参数:
- element: 当前遍历到的元素。
- index(可选): 当前遍历元素的索引。
- array可选: 数组本身。
- thisArg(可选): 执行回调时用作this 的对象。
返回值
- 数组中第一个满足所提供测试函数的元素的值,否则返回 undefined。
Array.prototype.findIndex()
点击查看MDN对该方法的解释
findIndex()方法返回数组中满足测试函数的第一个元素的索引。否则返回-1。
语法: arr.findIndex(callback[, thisArg])
参数
- callback: 针对数组中的每个元素, 都会执行该回调函数, 执行时会自动传入下面三个参数:
- element: 当前元素。
- index: 当前元素的索引。
- array: 调用findIndex的数组。
- thisArg(可选): 执行callback时作为this对象的值.
- callback: 针对数组中的每个元素, 都会执行该回调函数, 执行时会自动传入下面三个参数:
返回值
- 数组中通过提供测试函数的第一个元素的索引。否则,返回-1。
如果需要找到一个元素的位置或者一个元素是否存在于数组中,使用Array.prototype.indexOf() 或 Array.prototype.includes()。
Array.prototype.indexOf()
点击查看MDN对该方法的解释
indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。
语法:arr.indexOf(searchElement[, fromIndex])
- 参数:
- searchElement:要查找的元素。
- fromIndex(可选):开始查找的位置。如果该索引值大于或等于数组长度,意味着不会在数组里查找,返回-1。
- 返回值:
- 首个被找到的元素在数组中的索引位置; 若没有找到则返回 -1。
Array.prototype.includes()
includes() 方法用来判断一个数组是否包含一个指定的值,如果包含则返回 true,否则返回false。
语法:arr.includes(valueToFind[, fromIndex])
- 参数
- valueToFind: 需要查找的元素值。
- fromIndex(可选): 从fromIndex 索引处开始查找 valueToFind。如果为负值,则按升序从 array.length + fromIndex 的索引开始搜 (即使从末尾开始往前跳 fromIndex 的绝对值个索引,然后往后搜寻)。默认为 0。
- 返回值:
- 返回一个布尔值,如果在数组中找到了(如果传入了 fromIndex ,表示在 fromIndex 指定的索引范围中找到了)则返回 true 。
使用 includes()比较字符串和字符时是区分大小写。
Array.prototype.map()
点击查看MDN对其的解释
- map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
- map() 方法按照原始数组元素顺序依次处理元素。
- map() 不会对空数组进行检测。
- map() 不会改变原始数组。
var new_array = arr.map(function callback(currentValue[, index[, array]]) {// Return element for new_array
}[, thisArg])
- 参数
- callback: 生成新数组元素的函数,使用三个参数:
- currentValue: callback 数组中正在处理的当前元素。
- index(可选): callback 数组中正在处理的当前元素的索引。
- array(可选): map 方法调用的数组。
- thisArg(可选): 执行 callback 函数时值被用作this。
- callback: 生成新数组元素的函数,使用三个参数:
其他
1. JavaScript数组去重
2. JavaScript 数据拷贝
JavaScript Array相关方法相关推荐
- [ Typescript 手册] JavaScript `Array` 在 Typescript 中的接口
[ Typescript 手册] JavaScript `Array` 在 Typescript 中的接口 本文地址:https://blog.csdn.net/qq_28550263/article ...
- JavaScript Array --map()、filter()、reduce()、forEach()函数的使用
题目: 1.得到 3000 到 3500 之内工资的人. 2.增加一个年龄的字段,并且计算其年龄. 3.打印出每个人的所在城市 4.计算所有人的工资的总和. 测试数据: function getDat ...
- JavaScript - Array对象的使用 及 数组排序 sort
<html><head><head><body><script language="javascript">// Arr ...
- JavaScript -- array类型
array我认为是JavaScript中最常用的类型,最近刚好在看JavaScript红宝书,所以来总结一下相关方法. 创建数组 有两种方法创建数组. 使用array构造函数 let array = ...
- javascript——Array类型
今天这节教程不仅仅是阐述ECMAScript3的部分功能,同时也会阐述有关EXMASctip5的很多新的功能. 一.创建 因为它是一个引用类型,自然就需要在使用前先构造它. 我将分成两种方式来讲述 I ...
- JavaScript Array reverse 方法:颠倒数组中元素的顺序
在JavaScript中,Array对象的reverse()方法将颠倒(反转)数组中元素的顺序.arr.reverse()在原数组上实现这一功能,即,reverse()会改变原数组. 例1:将数组元素 ...
- Javascript Array对象
在javascript中所有的数组都是Array对象.我们可以通过Array类来创建,维护数组. 在javascript中有好几种创建数组的方法 var arr = new Array(); // ...
- javascript array添加图片_史上最全的web前端面试题汇总及答案JavaScript之二(二)...
作者:樱桃小丸子儿 链接:https://www.jianshu.com/p/abadcc84e2a4 JavaScript JS的基本数据类型 number,string,boolean,objec ...
- 最全 JavaScript Array 方法 详解
大家好,我是若川.最近组织了源码共读活动,感兴趣的可以点此加我微信 ruochuan12 参与,每周大家一起学习200行左右的源码,共同进步.同时极力推荐订阅我写的<学习源码整体架构系列> ...
最新文章
- Nature综述:微生物的社交网络 - 营养缺陷型如何塑造复杂群落
- php变量与数据类型,php中变量与数据类型讲解
- navicate 导出批量插入语句
- Can you answer these queries I SPOJ - GSS1 (线段树维护区间连续最大值/最大连续子段和)...
- 简单的动画函数封装(1)
- http --- 缓存
- 前端学习(1434):为什么学习vue
- python如何让进程运行在指定的cpu上_java程序可以实现在指定CPU上运行吗?
- Hadoop开发第6期---HDFS的shell操作
- rocketmq生产者发送到哪个队列
- linux命令执行绕过,命令执行绕过
- mysql迁移到mysqli_php – 从mysql连接迁移到mysqli
- html组合标题,如何组合标题关键词(影响标题的5个因素)
- pythonmsgbox怎么使用_弹出MsgBox后Python是否继续执行代码?
- python数据采集仪_数据采集卡支持python么深入理解Python生成器(Generator)
- 【视频】老外拍的阿里巴巴纪录片,讲述淘宝怎么打败eBay
- ip地址转换成16进制long
- 什么pdf转换成excel转换器好
- Arduino Nano 引脚分配图及定义详解
- Java后台开发面试实战(四):设计模式