探索JavaScript数组API:提升你的编程效率

embedded/2025/2/7 21:05:58/

大家好,今天我们来聊聊JavaScript中数组的常用API。数组是JavaScript中非常重要的一种数据结构,掌握数组的API对于提高编程效率具有重要意义。以下是一些实用的JavaScript数组API,让我们一起来看看吧!

一、创建数组

1、使用Array构造函数

javascript">let arr1 = new Array();
let arr2 = new Array(5); // 创建一个长度为5的数组
let arr3 = new Array('a', 'b', 'c'); // 创建一个包含三个元素的数组

2、 使用数组字面量

javascript">let arr = ['a', 'b', 'c'];

二、数组常用API

1、push() 和 pop()

push() 方法用于在数组的末尾添加一个或多个元素,并返回新的长度。 pop() 方法用于删除数组的最后一个元素,并返回被删除的元素。

javascript">let arr = [1, 2, 3];
arr.push(4); // 返回4,arr变为[1, 2, 3, 4]
arr.pop(); // 返回4,arr变为[1, 2, 3]

2、shift() 和 unshift()

shift() 方法用于删除数组的第一个元素,并返回被删除的元素。 unshift() 方法用于在数组的开头添加一个或多个元素,并返回新的长度。

javascript">let arr = [1, 2, 3];
arr.unshift(0); // 返回4,arr变为[0, 1, 2, 3]
arr.shift(); // 返回0,arr变为[1, 2, 3]

3、slice()

slice() 方法用于提取原数组的一部分,返回一个新数组。该方法不会改变原数组。

javascript">let arr = [1, 2, 3, 4, 5];
arr.slice(1, 3); // 返回[2, 3],arr不变

4、splice()

splice() 方法用于添加或删除数组中的元素。该方法会改变原数组。

javascript">let arr = [1, 2, 3, 4, 5];
arr.splice(2, 1, 'a', 'b'); // 从索引2开始删除1个元素,并添加'a'和'b',arr变为[1, 2, 'a', 'b', 4, 5]

5、join()

join() 方法用于将数组中的所有元素连接成一个字符串。

javascript">let arr = [1, 2, 3];
arr.join('-'); // 返回'1-2-3'

6、concat()

concat() 方法用于合并两个或多个数组。该方法不会改变原数组,返回一个新数组。

javascript">let arr1 = [1, 2, 3];
var arr2 = [4, 5, 6];
arr1.concat(arr2); // 返回[1, 2, 3, 4, 5, 6]

7、reverse()

reverse() 方法用于颠倒数组中元素的顺序。该方法会改变原数组。

javascript">let arr = [1, 2, 3];
arr.reverse(); // 返回[3, 2, 1],arr变为[3, 2, 1]

8、sort()

sort() 方法用于对数组元素进行排序。默认按照字符串Unicode码点进行排序,可传入自定义排序函数。该方法会改变原数组。

javascript">let arr = [3, 1, 4, 1, 5, 9];
arr.sort(); // 返回[1, 1, 3, 4, 5, 9],arr变为[1, 1, 3, 4, 5, 9]

9、map()

map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数。

javascript">let arr = [1, 2, 3];
arr.map(function(item) {return item * 2;
}); // 返回[2, 4, 6]

10、filter()

filter() 方法创建一个新数组,包含通过所提供函数实现的测试的所有元素。

javascript">let arr = [1, 2, 3, 4, 5];
arr.filter(function(item) {return item > 3;
}); // 返回[4, 5]

11、reduce()

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

javascript">let arr = [1, 2, 3, 4, 5];
arr.reduce(function(total, item) {return

 

 

 

 

 

 

 

 

 

 

 

 


http://www.ppmy.cn/embedded/144144.html

相关文章

[Redis#15] 持久化 | AOF | rewrite | aof_buf | 混合持久化

目录 1 使用AOF 流程 问题一:父进程在fork之后继续写旧AOF文件的意义 问题二:执行BGREWRITEAOF时的特殊情况处理 2 命令写入 3 文件同步 4 重写机制 工作流程: 触发条件 混合持久化 持久化 sum AOF(Append Only File&a…

GaussianDreamer: Fast Generation from Text to 3D Gaussians——点云论文阅读(11)

此内容是论文总结,重点看思路!! 文章概述 本文提出了一种快速从文本生成3D资产的新方法,通过结合3D高斯点表示、3D扩散模型和2D扩散模型的优势,实现了高效生成。该方法利用3D扩散模型生成初始几何,通过噪声…

关于项目二次开发那点事儿

以SpirngbootVue项目为例: 目前项目整体结构: 前端编译基本操作: # 安装依赖 npm install# 在 localhost:8080 启动项目 npm run serve# 运行项目中的构建脚本 npm run build npm run build 该命令执行成功之后,前端项目的目录下…

Newman+Jenkins实现接口自动化测试

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、是什么Newman Newman就是纽曼手机这个经典牌子,哈哈,开玩笑啦。。。别当真,简单地说Newman就是命令行版的Postman&#xf…

qt基本部分控件用法(一)

前言: 以前 windows下做工具主要是MFC,趁有点空时间,研究了QT,感觉跟MFC 差不多,VS 比 QT CREATOR 还是强大,不过QT可以跨平台,功能更强大,MFC 只能在win平台下.; 1:环境…

️【设计模式】之单例模式详解:创建者模式中的一颗“明珠”

全文目录: 开篇语🎯 什么是单例模式?🗂️ 单例模式的关键特性🔑 单例模式的实现方式1. 🌱 懒汉式单例(Lazy Initialization)2. 🔒 懒汉式单例(线程安全版&…

JAVA 架构师面试 100套含答案:JVM+spring+ 分布式 + 并发编程》...

今年的行情,让招聘面试变得雪上加霜。已经有不少大厂,如腾讯、字节跳动的招聘名额明显减少,面试门槛却一再拔高,如果不用心准备,很可能就被面试官怼得哑口无言,甚至失去了难得的机会。 现如今,…

RK3568 + OpenCV 会碰撞出什么火花?案例详解:2-1 基于OpenCV的画线实验

一、实验目的 本节视频的目的是了解OpenCV的作用并通过OpenCV实现画线。 二、实验原理 OpenCV 开放源代码计算机视觉库 OpenCV(Open source Computer Vision Library)是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机…