收集 的 JavaScript 数组方法表格

news2025/4/14 6:54:16

这个表格可以作为数组方法的快速参考指南

方法名对应版本功能原数组是否改变返回值类型
concat()ES5-合并数组,并返回合并之后的新数组nArray
join()ES5-使用分隔符,将数组转为字符串并返回nString
pop()ES5-删除最后一位,并返回删除的数据yAny(被删除的元素)
shift()ES5-删除第一位,并返回删除的数据yAny(被删除的元素)
unshift()ES5-在第一位新增一或多个数据,返回新数组长度yNumber(新数组长度)
push()ES5-在最后一位新增一或多个数据,返回新数组长度yNumber(新数组长度)
reverse()ES5-反转数组,返回反转后的数组yArray(反转后的数组)
slice()ES5-截取指定位置的数组,并返回新数组nArray
sort()ES5-排序(默认按字符规则),可传入比较函数,返回排序后的数组yArray(排序后的数组)
splice()ES5-删除指定位置,并替换,返回被删除的元素组成的数组yArray(被删除的元素组成的数组)
toString()ES5-直接转为字符串(相当于join(‘,’)),并返回nString
valueOf()ES5-返回数组对象的原始值(通常是数组本身)nArray
indexOf()ES5查询并返回数据的索引(从前往后),找不到返回-1nNumber
lastIndexOf()ES5反向查询并返回数据的索引(从后往前),找不到返回-1nNumber
forEach()ES5遍历数组所有项,回调函数接受value, index, array三个参数,无返回值nundefined
map()ES5遍历数组所有项,回调函数返回数据,组成新数组由map返回nArray
filter()ES5遍历数组所有项,回调函数返回布尔值,为true的数据组成新数组nArray
every()ES5遍历数组所有项,回调函数返回布尔值,全部为true则every返回truenBoolean
some()ES5遍历数组所有项,回调函数返回布尔值,只要有一个为true则some返回truenBoolean
reduce()ES5从左到右归并数组,回调函数接收accumulator, currentValue等参数,返回最终值nAny(归并结果)
reduceRight()ES5从右到左归并数组,回调函数接收accumulator, currentValue等参数,返回最终值nAny(归并结果)
includes()ES6判断数组是否包含某个值,返回布尔值nBoolean
find()ES6返回第一个满足测试函数的元素值,找不到返回undefinednAny(找到的元素)或undefined
findIndex()ES6返回第一个满足测试函数的元素索引,找不到返回-1nNumber
fill()ES6用固定值填充数组的指定区间yArray(修改后的数组)
copyWithin()ES6在数组内部复制指定序列到目标位置yArray(修改后的数组)
flat()ES2019将多维数组扁平化,返回新数组nArray
flatMap()ES2019先对每个元素执行map(),然后执行flat(1),返回新数组nArray

新增说明:

  1. ES6新增方法:includes(), find(), findIndex(), fill(), copyWithin()
  2. ES2019新增方法:flat(), flatMap()
  3. 返回值类型更具体化
  4. 增加了对回调函数参数的说明
  5. 对于会改变原数组的方法,在"原数组是否改变"列标记为y

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

操作系统高频(六)linux内核

操作系统高频(六)linux内核 1.内核态,用户态的区别⭐⭐⭐ 内核态和用户态的区别主要在于权限和安全性。 权限:内核态拥有最高的权限,可以访问和执行所有的系统指令和资源,而用户态的权限相对较低&#x…

位置编码汇总 # 持续更新

看了那么多还没有讲特别好的,GPT老师讲的不错关于三角函数编码。 一、 手撕transformer常用三角位置编码 GPT说:“低维度的编码(例如,第一个维度)可以捕捉到大的位置差异,而高维度的编码则可以捕捉到小的细…

DaVinci Resolve19.1下载:达芬奇调色中文版+安装步骤

如大家所了解的,DaVinci Resolve中文名为达芬奇,是一款专业视频编辑与调色软件。它最初以调色功能闻名,但经过多年发展,已扩展为一套完整的后期制作解决方案,涵盖了剪辑、视觉特效、动态图形和音频后期制作等多个模块。…

LINUX 1

快照 克隆:关机状态下:长时间备份 uname 操作系统 -a 获取所有信息 绝对路径 相对路径 -a -l 列表形式查看 -h 查看版本 相对路径这个还没太搞懂 LS -L LL 简写 显示当前路径 pwd cd 切换到目录 clear 清屏 reboot 重启操作系统

高效定位 Go 应用问题:Go 可观测性功能深度解析

作者:古琦 背景 自 2024 年 6 月 26 日,阿里云 ARMS 团队正式推出面向 Go 应用的可观测性监控功能以来,我们与程序语言及编译器团队携手并进,持续深耕技术优化与功能拓展。这一创新性的解决方案旨在为开发者提供更为全面、深入且…

【Windows】win10系统安装.NET Framework 3.5(包括.NET 2.0和3.0)失败 错误代码:0×80240438

一、.NET3.5(包括.NET 2.0和3.0)安装方式 1.1 联网安装(需要联网,能访问微软,简单,很可能会失败) 1.2 离线安装-救急用(需要操作系统iso镜像文件,复杂,成功几率大) 二、联网安装 通过【控制面板】→【程序】→【程序和功能】→【启用或关闭Windows功能】 下载过程…

蓝桥杯训练士兵

思路:其实每次就是要比较士兵单独训练的价格之和SUM与S的大小,如果 SUM大,那么就减去所有士兵都要训练的次数的最小值,SUM再更新一下,继续比较。 先对士兵的次数按从小到大的次序排序(很重要)&…

循环神经网络 - 简单循环网络

本文我们来学习和了解简单循环网络(Simple Recurrent Network,SRN), SRN是一个非常简单的循环神经网络,只有一个隐藏层的神经网络。 简单循环神经网络,也常称为 Elman 网络,是最基本的循环神经网络(RNN&am…

Linux 企业项目服务器组建(附脚本)

一、架构概述​ 本方案旨在为企业搭建一套高效、安全的 Linux 服务器架构,包含一台 DNS 服务器,以及一台同时承载 FTP 和 Samba 服务的服务器,满足公司在域名解析、图片存储与共享、文件共享等方面的业务需求。​ 二、服务器部署​ DNS 服…

⼆、Kafka客户端消息流转流程

这⼀章节将重点介绍Kafka的HighLevel API使⽤,并通过这些API,构建起Kafka整个消息发送以及消费的主线流程。 Kafka提供了两套客户端API,HighLevel API和LowLevel API。 HighLevel API封装了kafka的运⾏细节,使⽤起来⽐较简单&…

es 3期 第28节-深入掌握集群组建与集群设置

#### 1.Elasticsearch是数据库,不是普通的Java应用程序,传统数据库需要的硬件资源同样需要,提升性能最有效的就是升级硬件。 #### 2.Elasticsearch是文档型数据库,不是关系型数据库,不具备严格的ACID事务特性&#xff…

如何在 SwiftUI 视图中使用分页(Paging)机制显示 SwiftData 数据(三)

概述 小伙伴们都知道,自从有了 SwiftData 的加持,现在 SwiftUI 可以非常惬意的利用描述型命令创建以数据驱动为本的视图了。这在测试或演示小项目中工作的完美无缺,不过真实世界要“残酷”的多。 实际情况是,我们无法一次性将海量数据统统拉入内存以便在 SwiftUI 中显示,…

git和VScode

游戏存档保存的是游戏的进度 git保存的是代码的进度 Vscode和git 要正常的使用git首先要设置姓名和邮箱 要配合gitee(也可以是其他平台,以gitee举例)使用,首先创造一个gitee账号,复制邮箱和用户名 在VScode中找到…

利用Canvas在紫微斗数命盘上画出三方四正

许多紫微斗数排盘程序都会在命盘上画出三方四正的指示线&#xff0c;便于观察命盘。本文用Canvas在一个模拟命盘上画出三方四正指示线。 模拟命盘并画出“子”宫三方四正的HTML文件如下&#xff1a; <!doctype html> <html lang"en"> <head><…

传统汽车 HMI 设计 VS 新能源汽车 HMI 设计,有何不同?

一、设计理念与目标的差异 传统汽车HMI设计的核心目标是辅助驾驶&#xff0c;强调功能的简洁性和操作的便捷性。其设计侧重于提供基础的车辆信息&#xff08;如车速、转速、油量等&#xff09;&#xff0c;并确保驾驶员在操作时能够快速获取关键信息。相比之下&#xff0c;新能…

【JavaWeb】前端基础

JavaWeb 前端三大件&#xff1a;HTML&#xff08;主要用于网页主体结构的搭建&#xff09;&#xff0c;CSS&#xff08;页面美化&#xff09;&#xff0c;JavaScript&#xff08;主要用于页面元素的动态代理&#xff09; 1. HTML 1.1 html概述 HTML&#xff1a;Hyper Text …

SpringMVC组件解析

SpringMVC的执行流程 ① 用户发送请求至前端控制器DispatcherServlet。 ② DispatcherServlet收到请求调用HandlerMapping处理器映射器 ③ 处理器映射器找到具体的处理器(可以根据xm|配置、注解进行査找)&#xff0c;生成处理器对象及处理器 拦截器(如果有则生成)一…

数据结构C语言练习(两个栈实现队列)

一、引言 在数据结构的学习中&#xff0c;我们经常会遇到一些有趣的问题&#xff0c;比如如何用一种数据结构去实现另一种数据结构的功能。本文将深入探讨 “用栈实现队列” 这一经典问题&#xff0c;详细解析解题思路、代码实现以及每个函数的作用&#xff0c;帮助读者更好地…

nextjs使用02

并行路由 同一个页面&#xff0c;放多个路由&#xff0c;&#xff0c; 目录前面加,layout中可以当作插槽引入 import React from "react";function layout({children,notifications,user}:{children:React.ReactNode,notifications:React.ReactNode,user:React.Re…

第2.6节 iOS生成全量和增量报告

2.6.1 简介 在采集了覆盖率数据后&#xff0c;就需要生成对应需求的全量和增量覆盖率报告&#xff0c;以便对测试进行查漏补缺。IOS系统有两种开发语言&#xff0c;所以生成报告的方式也不相同&#xff0c;下面就分别介绍一下Object C和Swift语言如何生成覆盖率报告。 2.6.2 O…