js数组的常用方法

news2024/9/28 19:25:52

目录

1. 添加/删除元素

2. 查找和遍历

3. 转换

4. 排序

5. 其他


JavaScript中的数组是一种用于存储多个值的对象。数组提供了一系列的方法来进行操作,包括添加、删除、遍历和搜索等。下面列举了一些JavaScript数组的常用方法:

1. 添加/删除元素

  • push(): 在数组的末尾添加一个或多个元素,并返回新的长度。

    var fruits = ["apple", "banana"]; var newLength = fruits.push("orange"); // ["apple", "banana", "orange"]

  • pop(): 删除并返回数组的最后一个元素。

    var last = fruits.pop(); // 删除 "orange",fruits = ["apple", "banana"]

  • unshift(): 在数组的开头添加一个或多个元素,并返回新的长度。

    var newLength = fruits.unshift("strawberry"); // ["strawberry", "apple", "banana"]

  • shift(): 删除并返回数组的第一个元素。

    var first = fruits.shift(); // 删除 "strawberry",fruits = ["apple", "banana"]

  • splice(): 添加/删除数组中的元素。

    fruits.splice(1, 0, "mango", "kiwi"); // 从位置1开始,删除0个元素,添加"mango"和"kiwi"

2. 查找和遍历

  • indexOf(): 搜索数组中的元素,并返回它所在的位置。

    var position = fruits.indexOf("banana"); // position = 1

  • find(): 返回数组中满足提供的测试函数的第一个元素的值。

    var found = fruits.find(function(element) { return element.length > 5; }); // found = "banana"

  • findIndex(): 返回数组中满足提供的测试函数的第一个元素的索引。

    var foundIndex = fruits.findIndex(function(element) { return element.length > 5; }); // foundIndex = 1

  • forEach(): 对数组的每个元素执行一次提供的函数。

    fruits.forEach(function(item, index, array) { console.log(item, index); });
    

3. 转换

  • map(): 创建一个新数组,其结果是该数组中的每个元素调用一次提供的函数后的返回值。

    var lengths = fruits.map(function(item) { return item.length; }); // lengths = [5, 6]

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

    var longFruits = fruits.filter(function(item) { return item.length > 5; }); // longFruits = ["banana"]

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

    var totalLength = fruits.reduce(function(total, item) { return total + item.length; }, 0); // totalLength = 11

4. 排序

  • sort(): 对数组的元素进行排序,并返回数组。

    fruits.sort(); // ["apple", "banana"]

  • reverse(): 颠倒数组中元素的顺序。

    fruits.reverse(); // ["banana", "apple"]

5. 其他

  • concat(): 用于合并两个或多个数组。

    var moreFruits = fruits.concat(["grape", "pear"]);

  • slice(): 返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象。

    var citrus = fruits.slice(1); // ["banana"]

  • join(): 将数组的所有元素连接成一个字符串。

    var text = fruits.join(", "); // "apple, banana"

这些方法提供了强大且灵活的方式来操作JavaScript数组。通过组合使用这些方法,你可以轻松地处理复杂的数组操作任务。

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

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

相关文章

C指针 --- 进阶

目录 1. 字符指针 1.1. 一般使用 1.2. 另一种使用 2. 指针数组 3. 数组指针 3.1. 数组指针 3.2. 数组名和&数组名 3.3. 数组指针的用处 1. 传递一个数组 2. 传递数组首元素的地址 3. 数组指针处理一维数组 4. 数组指针处理二维数组 4. 数组传参和指针传参 4.1…

PHP危险函数

PHP危险函数 文章目录 PHP危险函数PHP 代码执行函数eval 语句assert()语句preg_replace()函数正则表达式里修饰符 回调函数call_user_func()函数array_map()函数 OS命令执行函数system()函数exec()函数shell_exec()函数passthru() 函数popen 函数反引号 实列 通过构造函数可以执…

杂牌行车记录仪特殊AVI结构恢复案例

最近遇到一个杂牌的行车记录仪需要恢复数据,其使用AVI格式,但是在扫描恢复的过程中却发现厂家对其AVI结构进行了“魔改”致程序无法正常识别 故障存储:16G SD卡 fat32文件系统 故障现象: 16G的SD卡,在发生事故后客户尝试自行接到手机上读…

小红书素人铺量推广费用是多少?

小红书作为一个拥有庞大用户群体的社交电商平台,在品牌营销和产品推广方面具有巨大的潜力。其中,素人铺量推广作为一种常见的推广方式,被越来越多的品牌和商家所采用。但是,对于很多刚刚接触小红书推广的人来说,素人铺…

二维码智慧门牌管理系统升级解决方案:一级属性 二级属性

文章目录 前言一、什么是智慧门牌管理系统?二、一级属性 vs. 二级属性三、升级中的实践意义 前言 在本文中,我们将深入探讨二维码智慧门牌管理系统的升级解决方案,特别聚焦于一级属性和二级属性的关键概念。我们将详细解释这些概念&#xff…

如何做好建筑翻译呢

近年来,随着跨国工程项目增加,建筑翻译也越来越受到重视。尤其是建筑图纸翻译在工程设计、规划和施工等方面都具有重要意义。那么,如何做好建筑翻译呢,建筑工程翻译哪个比较正规? 在建筑行业日新月异的发展中&#xff…

项目进度延误,危机管理5大注意事项

项目延误危机管理的重要性是不可忽视的。项目延误可能会导致资源浪费、成本增加、客户不满、信誉受损等一系列问题,严重影响项目的成功与效益。因此,有效地进行项目延误危机管理是至关重要的,一般主要是从以下5个方面进行管理: 1、…

python yield用法

用法和ts中的差不多 def test():i[1,2,3,4]for x in i:yield x for j in test():print(j) 使用的时候就会返回一次值 实际使用中可以这样使用,例如我把df按照半小时进行分割,然后分别取处理每半小时的数据 def test():final_df[raw_timestamp] pd.t…

js使用构造函数的注意点?

目录 前言 使用构造函数的注意点 1. 使用 new 关键字 用法 代码示例 理解 2. 构造函数首字母大写 用法 代码示例 理解 3. 在构造函数中返回对象 用法 代码示例 理解 4. 使用原型链 用法 代码示例 理解 总结 前言 JavaScript 是一种基于原型的语言&#xff…

【C#】LIMS实验室信息管理系统源码

一、系统概述 LIMS(Laboratory Information Management System)即实验室信息管理系统,是通过对样品检验流程、分析数据及报告、实验室资源和客户信息等要素的综合管理,按照标准化实验室管理规范,建立符合实验室业务流程的质量体系,实现实验室信息化管理。是实验室提高分析水平…

serverSocket编程DEMO

目录 0、jar包依赖 1、ServerSocket服务端主程序: 2、任务执行类 3、tomcatJdbcPool: 4、客户端: 0、jar包依赖 1、ServerSocket服务端主程序: package socket;import java.net.ServerSocket; import java.net.Socket; impo…

python try-except捕获异常的方法

python try-except捕获异常的方法 执行过程 1、是从try下的代码块1开始执行。 2、如果有异常抛出,异常将被捕获,直接跳转并执行except下的代码块2。、如果代码块1一切正常,没有异常抛出,代码块2就不会执行。 也就是说&#xff…

大语言模型助力审计问题自动定性

国家审计作为以权力监督制约权力的一项制度安排,是党和国家监督体系的重要组成部分,是国家治理大系统中一个内生的具有预防、揭示和抵御功能的“免疫系统”,是国家治理的基石和重要保障,在推进“全面建成小康社会、全面深化改革、…

Lvs+Nginx+NDS

什么是?为什么?需要负载均衡 一个网站在创建初期,一般来说都是只有一台服务器对用户提供服务 ​ 从图里可以看出,用户经过互联网直接连接了后端服务器,如果这台服务器什么时候突然 GG 了,用户将无法访问这…

iOS安全加固方法及实现

​ 目录 iOS安全加固方法及实现 摘要 引言 iOS安全加固方法及实现 一、字符串加密 二、类名方法名混淆 三、程序代码混淆 四、加入安全SDK 总结 参考资料 摘要 本文介绍了iOS平台下的应用安全保护方法,包括字符串加密、类名方法名混淆、程序代码混淆和加入…

input改造文件上传,el-table的改造,点击上传,拖拽上传,多选上传

第一个input标签效果 第二个input标签的效果 el-table的改造效果 <template><div class"outerBox"><div class"analyze" v-if"status"><div class"unFile"><div class"mainBox"><img clas…

如何在日常操作中降低激光切割机的老化速度

光纤激光切割机进入各行各业后给很多行业带来了创新和机遇。光纤激光切割机提升了生产效率、提高了产品品质的、降低了生产成本&#xff0c;节约了加工材料&#xff0c;同时加速了新产品的研发进程。然而光纤激光切割机作为一台机械设备也会面临老化和高能耗的问题。 假如维护保…

WebDAV之π-Disk派盘 + 言叶

言叶是一个功能丰富的笔记软件,为跨平台而设计,可以为你在手机、电脑和其他设备中实现多端同步。从而实现高效率的记事和办公。支持Markdown的语言和多种计算机语法高亮功能,让你笔记中的内容更加主次分明,可以在这里记录一些代码什么的。同时还可以在笔记中插入图片,使其…

安卓开发实例:方向传感器

调用手机的方向传感器&#xff0c;X轴&#xff0c;Y轴&#xff0c;Z轴的数值 activity_sensor.xml <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayoutxmlns:android"http://schemas.android.c…

微信JSAPI支付对接

简介 JSAPI支付是指商户通过调用微信支付提供的JSAPI接口&#xff0c;在支付场景中调起微信支付模块完成收款。 应用场景 JSAPI支付适用于线下场所、公众号场景和PC网站场景。 商户已有H5商城网站&#xff0c;用户通过消息或扫描二维码在微信内打开网页时&#xff0c;可以调…