JavaScript数组所有方法集合

##方法
1、concat
用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组

2、copyWithin
浅复制数组的一部分到同一数组中的另一个位置,并返回它,不会改变原数组的长度

3、entries
返回一个新的 Array Iterator 对象,该对象包含数组中每个索引的键/值对

4、every
测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值

5、fill
用一个固定值填充一个数组中从起始索引到终止索引内的全部元素

6、filter
创建一个新数组, 其包含通过所提供函数实现的测试的所有元素

7、find
返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined

8、findIndex
返回数组中满足提供的测试函数的第一个元素的索引。若没有找到对应元素则返回 -1

9、flat
按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回

10、flatMap
使用映射函数映射每个元素,然后将结果压缩成一个新数组

11、forEach
对数组的每个元素执行一次给定的函数

12、includes)
判断一个数组是否包含一个指定的值,如果包含则返回 true,否则返回 false

13、indexOf
返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回 -1

14、join
将一个数组的所有元素连接成一个字符串并返回这个字符串

15、keys
返回一个包含数组中每个索引键的 Array Iterator 对象

16、lastIndexOf
返回指定元素在数组中的最后一个的索引,如果不存在则返回 -1

17、map
返回一个新数组,其结果是该数组中的每个元素是调用一次提供的函数后的返回值

18、pop
从数组中删除最后一个元素,并返回该元素的值

19、push
将一个或多个元素添加到数组的末尾,并返回该数组的新长度

20、Reduce
对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值

21、ReduceRight
接受一个函数作为累加器(accumulator)和数组的每个值(从右到左)将其减少为单个值

22、reverse
将数组中元素的位置颠倒,并返回该数组。该方法会改变原数组

23、shift
从数组中删除第一个元素,并返回该元素的值

24、slice
提取源数组的一部分并返回一个新数组

25、some)
测试数组中是不是至少有一个元素通过了被提供的函数测试

26、sort
对数组元素进行原地排序并返回此数组

27、splice
通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容

28、toLocaleString
返回一个字符串表示数组中的元素。数组中的元素将使用各自的 Object.prototype.toLocaleString()方法转成字符串

29、toString
返回一个字符串表示指定的数组及其元素。数组中的元素将使用各自的 [Object.prototype.toString()]方法转成字符串

30、unshift将一个或多个元素添加到数组的头部,并返回该数组的新长度

31、values
返回一个新的 Array Iterator 对象,该对象包含数组每个索引的值

32、at
返回给定索引处的数组项。接受从最后一项开始倒数的负整数。

33、iterator
返回一个新的 Array Iterator 对象,该对象包含数组每个索引的值

var arr = ['a', 'b', 'c', 'd', 'e'];
var eArr = arr[Symbol.iterator]();
// 浏览器必须支持 for...of 循环
for (let letter of eArr) {console.log(letter);
}//另一种迭代方式var arr = ['a', 'b', 'c', 'd', 'e'];
var eArr = arr[Symbol.iterator]();
console.log(eArr.next().value); // a
console.log(eArr.next().value); // b
console.log(eArr.next().value); // c
console.log(eArr.next().value); // d
console.log(eArr.next().value); // e

34、toSource 非标准方法 请查阅
返回一个字符串,代表该数组的源代码.

var alpha = new Array("a", "b", "c");
alpha.toSource();   //返回["a", "b", "c"]

35、valueOf
返回值为该对象的原始值
valueOf方法一般都会被 JavaScript 自动调用,但你也可以自己调用

// Array:返回数组对象本身
var array = ["ABC", true, 12, -5];
console.log(array.valueOf() === array);   // true

36、Array.from
Array.from() 方法从一个类似数组或可迭代对象中创建一个新的,浅拷贝的数组实例


##属性
1、constructor
所有对象都会从它的原型上继承一个 constructor 属性
返回创建实例对象的 [Object]构造函数的引用。注意,此属性的值是对函数本身的引用,而不是一个包含函数名称的字符串。对原始类型来说,如1true"test",该值只可读。

2、length
length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标

3、unscopables
Symbol 属性 **@@unscopable** 包含了所有 ES2015 (ES6) 中新定义的、且并未被更早的 ECMAScript 标准收纳的属性名。这些属性被排除在由 [with] 语句绑定的环境中。
arr[Symbol.unscopables]

4、species
Array[@@species] 访问器属性返回 Array 的构造函数。

5、prototype
Array.prototype 属性表示 [Array] 构造函数的原型,并允许您向所有 Array 对象添加新的属性和方法
鲜为人知的事实:Array.prototype 本身也是一个 [Array]。

Array.isArray(Array.prototype);
// true

后言

一图诠释map、filter、every、some、fill、reduce等方法区别
image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/28718.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Vue + FormData + axios实现图片上传功能实战

前言 上节回顾 上一小节中,我们添加了Vue-router的路有数据,这些数据都将是后续实战课程中的真实路由数据了。同时引入了ElementUI的el-menu做为左侧菜单的组件,但本专栏的特点就是遇到第三方功能和组件,自己尽量也要实现一遍,所以,在文章末尾又自己实现了一个tg-menu的…

数据结构--线性表以及其顺序存储结构

这里写目录标题 线性表的定义和特征定义特征 案例引入稀疏多项式链表实现多项式相加小结 线性表的类型定义(抽象数据类型)定义格式基本操作小结 线性表的顺序表示和实现实现1顺序存储表示顺序表中元素存储位置的计算 实现2顺序表的优点问题出现结构体表示…

消息推送(websocket)集群化解决方案

目录 需求分析解决方案实现步骤架构图配置websocket请求地址配置websocket连接前置和连接关闭监听配置websocket处理程序配置redis交换机配置redis订阅监听配置redis发布监听需求分析 及时信息传递:消息推送功能能够确保网站向用户发送及时的重要信息,包括新闻更新、促销活动…

SpringCloud(六)Config配置中心

一、配置中心 官方文档:**https://docs.spring.io/spring-cloud-config/docs/current/reference/html/ 经过前面的学习,我们对于一个分布式应用的技术选型和搭建已经了解得比较多了,但是如果我们的微服务项目需要部署很多个实例&#xff0c…

基于node.js中的serialport模块实现无线传感网上位机功能

半个月前的无线传感网课设上位机的实现遇到了很多困难,特写此文章给有需要的朋友一些帮助,欢迎私信探讨 文章目录 前言一、node.js中的serialport模块二、express框架三、echarts实现拓扑图四、实现下行数据五、成果展示总结 前言 本文所要实现的功能以…

Spring Boot : ORM 框架 JPA 与连接池 Hikari

数据库方面我们选用 Mysql , Spring Boot 提供了直接使用 JDBC 的方式连接数据库,毕竟使用 JDBC 并不是很方便,需要我们自己写更多的代码才能使用,一般而言在 Spring Boot 中我们常用的 ORM 框架有 JPA 和 Mybaties ,本…

MySQL事务与事务的隔离级别

MySQL事务与事务的隔离级别 什么事务?事务的特点(ACID)事务的隔离级别多事务运行的并发问题隔离级别repeatable read(可重复读)之 MVCC(多版本并发控制) 并发机制优化 什么事务? 事务…

为什么要分表和分区?

目录 🥶为什么要分表和分区? 🥶分表 🥶Mysql分表分为垂直切分和水平切分 🥶分表的几种方式: 🥶mysql集群 🥶利用merge存储引擎来实现分表 🥶分区 🥶什么是分…

OpenCv之图像轮廓

目录 一、图像轮廓定义 二、绘制轮廓 三、计算轮廓面积与周长 一、图像轮廓定义 图像轮廓是具有相同颜色或灰度的连续带你的曲线.轮廓在形状分析和物体的检测和识别中很有用 轮廓的作用: 用于图形分析物体的识别与检测 注意点: 为了检测的准确性,需要先对图像…

【Apifox】国产测试工具雄起

在开发过程中,我们总是避免不了进行接口的测试, 而相比手动敲测试代码,使用测试工具进行测试更为便捷,高效 今天发现了一个非常好用的接口测试工具Apifox 相比于Postman,他还拥有一个非常nb的功能, 在接…

springboot整合feign实现RPC调用,并通过Hystrix实现降级

目录 一、服务提供者 二、服务消费者 三、测试效果 四、开启Hystrix实现降级功能 feign/openfeign和dubbo是常用的微服务RPC框架,由于feigin内部已经集成ribbon,自带了负载均衡的功能,当有多个同名的服务注册到注册中心时,会根…

【已解决】哪些软件可以解压RAR文件?

RAR文件是我们日常生活及工作中经常用的压缩文件,文件压缩后可以更方便储存或者传输,后续要使用的时候再进行解压。 那RAR文件如何解压呢?哪些软件可以用来解压RAR文件?在这一方面还是小白的小伙伴可以来看看下面的分享。 解压任…