javascript开发:数组Array探究

JavaScript Array(数组) Array 对象是 JavaScript 中的一个内置对象,它提供了一系列用于数组操作的函数和方法。使用 Array 对象可以方便地创建、访问、修改和删除数组元素。本文详细介绍了 JavaScript 中的 Array 对象,包括其基本用法、方法、属性以及在实际开发中的应用。掌握 Array 对象,有助于提高 JavaScript 编程水平,提升开发效率。希望本文对您有所帮助。2278字标题包含关键词“JavaScript”和“Array”,提高搜索排名。 阅读详情
1、创建数组

    创建数组的方法有多个,我们用自己喜欢的写法就好。在创建数据组的时候,可以是一个空数组,也可以为他指定长度,也可以直接赋值给它。

[javascript]  view plain  copy
  1. var arrayObj = new Array();  //创建一个数组  
  2. var arrayObj = [];          //创建一个数组,和上不同写法  
  3.   
  4. var arrayObj = new Array(5);  //创建一个数组并指定长度(5),注意不是上限,是长度  
  5.   
  6. var arrayObj = [1,2,3,4,5];     //创建一个数组并赋值  
2、数组属性

    数组属性其实指的就是其长度:length。在创建函数的时候可以给它指定长度,也可以在后面获取他的长度。

[javascript]  view plain  copy
  1. <script>  
  2. window.onload=function  () {  
  3.               
  4.     var arrayObj = [1,2,3,4,5];   
  5.     alert(arrayObj.length);  //长度为5  
  6.     arrayObj.length=3;  
  7.     alert(arrayObj.length);//长度为3  
  8.     arrayObj.length=0;  
  9.     alert(arrayObj.length);//长度为0  
  10. }     
  11. </script>  

3、数组对象(重点)
 
 3.1、数组的拼接concat()

Array.concat( ),方法concat()将创建并返回一个新数组,这个数组是将所有参数都添加到array中生成的。它并不修改array。如果要进行concat()操作的参数是一个数组,那么添加的是数组中的元素,而不是数组。

[javascript] view plain copy
  1. <script>  
  2.     window.onload = function() {  
  3.   
  4.         var a = [1, 2, 3];  
  5.         a.concat(4, 5) //返回 [1,2,3,4,5]  
  6.         a.concat([4, 5]); //返回 [1,2,3,4,5]  
  7.         a.concat([4, 5], [6, 7]) //返回 [1,2,3,4,5,6,7]  
  8.         a.concat(4, [5, [6, 7]]) //返回 [1,2,3,4,5,[6,7]]  
  9.     }  
  10. </script>  

3.2、数组分隔符join()

语法:
array.join( ) 
array.join(separator)

参数: separator 在返回的字符串中用于分隔数组元素的字符或字符串,它是可选的。如果省略了这个参数,用逗号作为分隔符。
返回值:

    —个字符串,通过把array的每个元素转换成字符串,然后把这些字符串连接起来,在两个元素之间插入separator字符串而生成。

[javascript]  view plain  copy
  1. <script>  
  2.     window.onload = function() {  
  3.         var arr = [1, 2, 3, 4];  
  4.         alert(arr.join('- -p'));  
  5.     }  
  6. </script>  

3.3、删除数组最后一个元素 pop()

Array.pop( ),方法pop()将删除array的最后一个元素,把数组长度减1,并且返回它删除的元素的值。如果数组已经为空,则pop()不改变数组,返回undefined。

[javascript]  view plain  copy
  1. <script>  
  2.     window.onload = function() {  
  3.         var arr = [1, 2, 3];  
  4.         arr.pop();  
  5.         alert(arr);  
  6.     }  
  7. </script>  

3.4、添加数组元素 push()

Array.push( ) ,要添加到array尾部的值,可以是一个或多个。方法push()将把它的参数顺次添加到array的尾部。它直接修改array,而不是创建——个新的数组。方法push()和方法pop()用数组提供先进后出栈的功能。

[javascript]  view plain  copy
  1. <script>  
  2.     window.onload = function() {  
  3.         var arr = [1, 2, 3];  
  4.         arr.push(4);  
  5.         alert(arr);  
  6.     }  
  7. </script>  

3.5、颠倒数组元素 severse()

[javascript]  view plain  copy
  1. <script>  
  2.     window.onload = function() {  
  3.         var arr = [12, 8, 99, 19, 112];  
  4.         arr.reverse();  
  5.         alert(arr);  
  6.     }  
  7. </script>  

3.6、删除数组第一个元素 shift()

Array.slice( ),方法shift()将把array的第—个元素移出数组,返回那个元素的值,并且将余下的所有元素前移一位,以填补数组头部的空缺。如果数组是空的,shift()将不进行任何操作,返回undefined。注意,该方法不创建新数组,而是直接修改原有的数组。
方法shift()和方法Array.pop()相似,只不过它在数组头部操作,而不是在尾部操作。该方法常常和unshift()一起使用。
方法unshift()将把它的参数插入array的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。

[javascript]  view plain  copy
  1. <script>  
  2.     window.onload = function() {  
  3.         var arr = [1, 2, 3];  
  4.         //arr.shift();  
  5.         arr.unshift(5);  
  6.         alert(arr);  
  7.     }  
  8. </script>  

3.7、任意位置添加、删除、置换数组元素 splice()

array.splice(start, deleteCount, value, ...)

参数:
start
开始插入和(或)删除的数组元素的位置(不是下标)。
deleteCount
从start开始,包括start所指的元素在内要删除的元素个数。这个参数是可选的,如果没有指定它,splice()将删除从start开始到原数组结尾的所有元素。
value, ...
要插人数组的零个或多个值,从start所指的下标处开始插入。

[javascript]  view plain  copy
  1. <script>  
  2.     window.onload = function() {  
  3.         var arr = [1, 2, 3, 4, 5, 6];  
  4.         //删除:splice(起点, 长度)  
  5.         //arr.splice(2, 3);  
  6.         //插入:splice(起点, 长度, 元素...);  
  7.         //arr.splice(2, 0, 'a', 'b', 'c');  
  8.         arr.splice(2, 2, 'a', 'b');  
  9.         alert(arr);  
  10.     }  
  11. </script>  

3.8、数组排序 sort()

数组排序一般都是对字符串和数字就行排序,数字较多(排名)。

[javascript]  view plain  copy
  1. <script>  
  2.     window.onload = function() {  
  3.         var arr = ['float', 'width', 'alpha', 'zoom', 'left'];  
  4.         arr.sort();  
  5.         alert(arr);  
  6.     }  
  7. </script>  
数字的排序:
    方法sort()将在原数组上对数组元素进行排序,即排序时不创建新的数组副本。如果调用方法sort()时没有使用参数,将按字母顺序(更为精确地说,是按照字符编码的顺序)对数组中的元素进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如果有必要的话),以便进行比较。
    如果想按照别的顺序进行排序,就必须提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数a和b,其返回值如下:

  • 如果根据你的评判标准,a小于b,在排序后的数组中a应该出现在b之前,就返回一个小于0的值。

  • 如果a等于b,就返回0。

  • 如果a大于b,就返回一个大于0的值。 

[javascript]  view plain  copy
  1. <script>  
  2.     var arr = [12, 8, 99, 19, 112];  
  3.     arr.sort(function(n1, n2) {  
  4.         if(n1 < n2) {  
  5.             return -1;  
  6.         } else if(n1 > n2) {  
  7.             return 1;  
  8.         } else {  
  9.             return 0;  
  10.         }  
  11.     });  
  12.     alert(arr);  
  13. </script>  
简写:最好先理解一个函数:max()自己写一个比较大小的函数

[javascript]  view plain  copy
  1. <script>  
  2.     function max(n1, n2) {  
  3.         if(n1 < n2) {  
  4.             return -1;  
  5.         }  
  6. </script>  
示例:

下面的代码展示了如何编写按数字顺序,而不是按字母顺序对数组进行排序的比较函数:

function numberorder(a, b) { return a - b; }// 按照数字顺序排序的排序函数
a = new Array(33, 4, 1111, 222);
a.sort(  );             // 按照字母顺序的排序结果为: 1111, 222, 33, 4
a.sort(numberorder);    // 按照数字顺序的排序结果为: 4, 33, 222, 1111


3.9、数组元素转换为字符串 toString()

    Array.toString( )数组的toString()方法将把数组转换成一个字符串,并且返回这个字符串。当数组用于字符串环境中时,JavaScript会调用这一方法将数组自动转换成一个字符串。但在某些情况下,需要明确地调用这个方法。
    toString()在把数组转换成字符串时,首先要将数组的每个元素都转换成字符串 (通过调用这些元素的toString()方法)。当每个元素都被转换成字符串时,它就以列表的形式输出这些字符串,字符串之间用逗号分隔。返回值与没有参数的join()方法返回的字符串相同。

[javascript]  view plain  copy
  1. <script type="text/javascript">  
  2.     var arr = new Array(3)  
  3.     arr[0] = "George"  
  4.     arr[1] = "John"  
  5.     arr[2] = "Thomas"  
  6.     document.write(arr.toString())  
  7. </script>  
数组的方法使用补充说明 文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 一、pandas是什么? 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。 二、使用步骤 1.引入库 代码如下(示... 阅读详情

相关推荐

JS中Array数组方法(秒懂数组方法如何使用)

JavaScript中的Array(数组)是一种用于存储多个值的数据结构,它是一种有序的集合,可以包含各种类型的数据,例如数字、字符串、对象等。

百赢出品,必属精品 5048

js数组Array探究

1、创建数组     创建数组的方法有多个,我们用自己喜欢的写法就好。在创建数据组的时候,可以是一个空数组,也可以为他指定长度,也可以直接赋值给它。 var arrayObj = new Array();  //创建一个数组 var arrayObj = []; //创建一个数组,和上不同写法 var arrayObj = new Array(5);  //创建一个数组

小屋博客 794

Cesium+Three.js融合实战:从零构建GIS与BIM一体化大场景

本文详细介绍了Cesium与Three.js融合技术在GIS与BIM一体化大场景中的应用实践。通过坐标系转换、双引擎协同渲染等核心技术,实现宏观地理信息与微观建筑细节的完美结合,为智慧城市、数字孪生等项目提供高效解决方案。文章包含环境配置、性能优化等实战经验,助力开发者快速掌握三维可视化开发技巧。

weixin_42563415的博客 262

JavaScript基础-----数组(Array)

1.JavaScript 中创建数组的方法:     (1).使用Array构造函数:     var arr = new Array(); //创建一个空数组 var arr = new Array(5); //传递一个整数时,表示创建了一个长度为 5 的数组,如果传递一个字符串,则表示创建了包含这个字符串的数组 var arr = new Array(5,"abc",20) ...

Lazy_Life的博客 853

【密码专栏】超强进阶:PLONK VS Groth16(上)

前言 前文《天冷了,干了这碗“零知识证明”鸡汤》对「零知识证明学习」作了一个形象化的比喻:炖鸡汤。那么本系列的主要内容可以简单概括为《论高压锅炖鸡汤的一百种方法》之方法二。在学会了“清炖鸡汤”之后,不如来一口“阿胶鸡汤”补补脑细胞吧! 正如鸡汤不同风味之间各具千秋,不同的zk-SNARK方案也各有所长。zk-SNARK方案可以被分为【通用】与【非通用】zk-SNARK,PLONK与Groth16分别是其中的典型代表。通过本系列,我们将对PLONK算法内容作简要介绍,并指出PLONK和Groth16算法思路上

Hyperchain的博客 1805

SQL Prompt 9.0插件突然无法使用解决办法(附防联网激活)多图+文字

可能由于Redgate公司最近抓盗版抓得严,导致激活后的SQL Prompt联网后突然无法使用,无论卸载重装都没办法继续使用,本人同时使用SQL Assistant和SQL Prompt,我喜欢SQL Assistant代码提示功能,而SQL Prompt我喜欢将查询结果复制后可以直接生产插入脚本,这是最爽的一件事,即便对表有多么熟悉,没有这些插件,几行语法都要敲大半天,目前本人已经离不开这两个插...

骚团长的博客 1万+

JavaScript数组相关方法学习笔记

ECMAScript3和ECMAScript5中的数组相关方法

wangs1996 416

YOLO-FastestV2从零部署到移动端推理实战手册

本文详细介绍了YOLO-FastestV2从零开始的完整部署流程,涵盖环境搭建、模型训练、格式转换及移动端部署。通过实战步骤,指导开发者将这一轻量级目标检测模型成功部署到Android设备,实现实时推理。文章重点解析了PyTorch到NCNN的模型转换与优化,助力移动端AI应用开发。

l1k9j8h7g6的博客 668

JS数组方法(ES5、ES6)

JS数组方法 一、创建数组方式 字面量方式 var arr1 = []; 创建一个空数组 var arr2 = [5]; 创建一个具有单个元素的数组 var arr3 = [5,6,7]; 创建一个具有多个元素的数组 构造函数方式 var arr1 = new Array() 创建一个空数组 var arr2 = new Array(5) 创建一个长度为5,值为空的数组 var arr3 = new Array(5,6,7)创建一个具有多元素

weixin_47810787的博客 1029

即插即用!5分钟为你的SNN模型添加频谱注意力(DCT-SA模块实战)

本文介绍了如何为脉冲神经网络(SNN)快速集成即插即用的DCT-SA频谱注意力模块。该模块利用离散余弦变换(DCT)在频率域自适应加权特征,能有效提升模型对纹理、边缘的感知能力,并在CIFAR10-DVS等数据集上实现分类精度提升与脉冲发放率下降。文章以SpikingJelly框架和ResNet19为例,提供了详细的代码实现、集成步骤及参数调优实战指南。

kotlin6android的博客 609

全国各省份影像下载地址(11级别)

cesium中使用urltemplate加载,leaflet中使用tile加载,具体加载有问题可以给我留言。

资深三维GIS开发 5143

【JavaScript】 数组 Array

当然 reduce 的作用也不单单只作为一个累加器来用,我们还可以利用 reduce 的特性做其他的用途,比如数组的去重。对应的布尔值,都是 true。数组是复合的数据类型,直接复制的话,只是复制了指向底层数据结构的指针,而不是克隆一个全新的数组。filter() 循环返回一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。原数组的一部分成员,并可以在删除的位置添加新的数组成员,返回值是被删除的。它将新数组的成员,添加到原数组成员的后部,然后返回一个。数组元素,返回改变后的数组。

小数点儿_ 1671

嵌入式开发工程师笔试面试指南-Linux驱动

linux驱动

weixin_43491077的博客 473

JavaScript-数组(new Array)

创建数组的俩种方式: 1、利用数组字面量 var arr = [1, 2, 3]; console.log(arr); //输出结果为1,2,3 2、利用new Array() var arr1 = new Aarry(); //创建了一个空的数组 var arr2 = new Aarry(2); //里面的2表示数组的长度为2,输出结果我2个空的数组元素 var arr3 = new A......

qq_41670147的博客 4万+

基于深度学习YOLOv11的布匹缺陷检测系统(Python+PySide6界面+训练代码)

YOLOv11模型训练:根据布匹缺陷数据集训练YOLOv11模型,以识别布匹中的各种缺陷,如裂纹、污渍、破损等。PySide6界面设计:设计一个图形用户界面,帮助用户上传布匹图像,并显示模型的检测结果。模型优化与精度提升:通过数据增强、超参数调优等手段提高模型的准确性。本文介绍了如何基于YOLOv11实现布匹缺陷检测系统,并通过PySide6构建了一个图形用户界面。该系统能够自动检测布匹中的各种缺陷,具有较高的效率和精度。

斌擎科技 529

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

JavaScript数组(Array)

JavaScript数组数组(Array)数组的定义使用[]创建数组使用Array创建数组数组的访问数组的方法push 向数组中添加元素pop 从数组的末尾获取元素,并将元素从数组中删除shift 从数组首个下标获取元素,并将元素从数组中删除slice 切片join 和 split 数组(Array) 用于存储多个数据集合的类型 var names = ['张飞','刘备','关羽']; console.log(names); 数据元素的访问, 通过下标的形式(下标从0开始) 数组名[下标], na

『愚』的博客 3147

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

探索JavaScript数组的艺术:js-array-operations项目深度剖析

探索JavaScript数组的艺术:js-array-operations项目深度剖析 在编程的浩瀚宇宙中,JavaScript以其灵活性和广泛性占据了重要的一席之地。而在JavaScript的世界里,数组操作是日常开发中不可或缺的一部分。今天,我们要向您推荐一个精巧实用的开源项目——js-array-operations,它解锁了探索JavaScript数组的20种新方式。 项目介绍 js-a...

gitblog_00141的博客 1003

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

4. JS Array专项复习1 ——数组及数组的静态方法

本文旨在使用好记的方法来延长Array的记忆。并且简洁易懂,这是第一篇,静态方法

qq_54127343的博客 1155

JavaScript将Set(集合)转换为Array数组

在JavaScript中,想要将Set(集合)转换为Array数组,可以通过以下方式实现。 方法1:使用Array.from()方法 Array.from()方法从对象或可迭代对象(如Map,Set等)返回一个新数组。 语法: Array.from(arrayLike object); 示例: <script> const set = new Set(['welcome', 'you','!']); console.log(set); c..

qq_43067585的博客 1万+

Javascript对象 - Array数组

Javascript对象 - Array数组

听海边涛声 968

Array.js: 简洁、高效的 JavaScript 数组工具库

Array.js: 简洁、高效的 JavaScript 数组工具库 Array.js 是一个轻量级的 JavaScript 库,用于提供多种实用的数组操作方法。由 Matthew Mueller 创建并开源在 GitCode 上,它的目标是让开发者更加方便地处理各种数组任务,提高代码效率。 功能介绍 Array.js 提供了一系列强大且易于使用的函数,包括但不限于: contains: 检查数组...

gitblog_00006的博客 548

Javascript中数组的使用方式、Array的属性和方法的使用以及解释理解

数组是值得有序集合,每个值叫做一个元素,而每个元素在数组中有一个位置,以数字表示,称为索引。js的数组是无类型的,数组元素可以是任意类型,同一个数组中的不同元素可能是对象或数组。数组元素的索引不一定要连续,元素之间可以有空隙,叫做稀疏数组。每个数组都具有一个lengrh属性。针对非稀疏数组,length属性就是数组元素的个数,针对稀疏数组,元素的length属性比所有元素的索引要大。非稀疏是我们学习掌握的主要知识点。

tdx03的博客 1452

四个初始化 JavaScript Array数组方法及性能对比

每天学习一个 JS 片段,涨涨🧀!今天带来的是四个初始化 JavaScript Array数组方法。

weixin_43303603的博客 2115

js如何判断数组是Array类型

在说明如何判断一个对象为数组类型前,我们先巩固下js的数据类型,js一共有六大数据类型:number、string、object、Boolean、null、undefined。var str="string";console.log(typeof str); //stringvar num=1;console.log(typeof num); //numbervar bn=false;c...

dishang1614的博客 1862

JS之Array数组补充(ES6)

本次内容是对于上次的Js之中Array(数组)方法解读的补充,是针对于Array数组的ES6知识,很凑巧的是,在前段时间总结完ES5方法之后,我的ES6语法也刚好看到Array数组的内容,所以无缝衔接了起来。 本次内容更多适用与大三或者大四已经有一定JavaScript基础的进阶教程。对于走前端开发的程序猿来说,ES6是不可避免的,希望各位与博主共勉,且将新火试新茶。诗酒趁年华。 话不多说,上干货...

weixin_44220680的博客 4076

JavaScript Array数组分页

javaScript:将Array数组分页处理,支持分页数据容错; 兼容版本:ES6。

红头鹦的博客 1971
上一篇: javascript开发:js常见问题
下一篇: vue开发:vue中computed 和 watch的异同
Generon
博客等级 码龄11年 135粉丝 135原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值