当前位置:首页 > 日记 > 正文

谈谈JavaScript数组常用方法总结

谈谈JavaScript数组常用方法总结

在JavaScript中,我们需要时常对数组进行操作,现在特将常用方法总结如下:

1.增加数据

在JavaScript为数组增加数据主要分为两种方式。

 从数组末尾增加内容:push方法

从数组的前端增加内容:unshift方法

这两种方法的返回值都是数组的长度

var arr=[1,2,3]; //从末尾增加 arr.push(4); console.log(arr);//[1,2,3,4]  //从前端增加 arr.unshift(0); console.log(arr);//[0,1,2,3,4] 

2.删除数据

和增加数据一样,删除数据和主要分为两种方式。

从数组末尾增加内容:pop方法

从数组的前端增加内容:shift方法

这两种方法的返回值都是删除的数据

var arr=[1,2,3]; //从末尾删除 arr.pop(); console.log(arr);//[1,2]  //从前端删除 arr.unshift(); console.log(arr);//[2] 

3.从指定位置删除和增加数据

splice(startIndex,deleteCount,addValue1,addValue2...):从数组的startIndex位置开始,删除deleteCount个数据,然后在插入addValue1,addValue2等,返回值是被删除的数组所组成的数组。

var arr=[1,2,3,4,5]; var deleteArr=arr.splice(1,2,8,9);  console.log(deleteArr);//[2,3] console.log(arr);//[1,8,9,4,5] 

从上面所知,数组的删除方法返回的都是被删除的内容,增加的方法返回的都是数组改变后的长度。

4.反序数组

reverse():将数组内容逆序。

var arr=[1,2,3]; arr.reverse(); console.log(arr);//[3,2,1] 

5.将数组内容组成一个有特定分隔符的字符串

join(seperator):将数组内容组成一个字符串,内容以seperator分隔

var arr=[1,2,3]; arr.join(','); console.log(arr);//1,2,3 

6.合并两个数组

concat():合并数组并返回一个新的数组,不影响原有数组。

var arr1=[1,2,3]; var arr2=[4,5,6];  var newArr=arr1.concat(arr2);  console.log(arr1);//[1,2,3] console.log(arr2);//[4,5,6] console.log(newArr);//[1,2,3,4,5,6] 

7.数组排序

sort():默认将数组进行数字或字母进行升序排序,但也可以自定义降序排序

var arr=[3,5,1];  arr.sort();  console.log(arr);//[1,3,5];  //指定降序 var arr1=[4,2,7]; arr1.sort(function(a,b){   return b-a; }) console.log(arr1);//[7,4,2] 

8.截取子数组

slice(startIndex,endIndex):截取数组中从startIndex到endIndex之间的内容,不包括endIndex所在位置的内容组成一个新的数组

var arr=[1,2,3,4,5,6];  var newArr=arr.slice(1,3);  console.log(arr);//[1,2,3,4,5,6] console.log(newArr);//[2,3] 

 9.判断给定数据在数组中的位置

indexOf(data):该方法返回data在该数组中所在的第一个元素位置,如果没有找到就返回-1

var arr=[1,2,3];  var loc=arr.indexOf(1); console.log(loc);//0  var newLoc=arr.indexOf(4); console.log(newLoc);//-1 

10.迭代器

数组的迭代器方法很多。

a.普通的遍历数组:forEach(function(value,index,arr){}),其中index是索引,value是值,arr就是数组本身

var arr=[1,2,3];  //index是索引,value是值 arr.forEach(function(value,index,arr){    console.log(''index:"+index+" "+"value:"+value) }) 

b.过滤数组:filter(),根据过滤条件过滤数组,但不会改变原有数组

var arr=[1,2,3,4];  //返回数组中大于2的内容 var newArr=arr.filter(function(item){   return item>2; })  console.log(arr);//[1,2,3,4] console.log(newArr);//[3,4] 

c.映射数组:map(),对数组每个元素进行一定映射后,返回一个新数组,不会改变原有数组

var arr=[1,2,3,4];  //将数组每个值扩大一倍 var newArr=arr.map(function(item){   return item*2; });  console.log(arr);//[1,2,3,4] console.log(newArr);//[2,4,6,8] 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关文章

PS怎么批量复制图层与批量删除图层

PS怎么批量复制图层与批量删除图层

删除图层,图层,批量,电脑软件,PS,我们用PS制图,有时需要大量的复制同一个图层,如何才能快速的便捷的复制出来呢?又如何把多出来不需要的大量图层给一次性删除呢?下面我们一起来看下具体是如何操作的。软件名称:Adobe Photoshop 8.0 中文完整绿色…

ps怎么给简笔画小鸟添加飞翔的动画

ps怎么给简笔画小鸟添加飞翔的动画

动画效果,小鸟,简笔画,电脑软件,ps,ps中想要制作一段动画,该怎么直走呢?下面我们就来看看给小鸟添加动画效果的教程。软件名称:Adobe photoshop 7.01 官方正式简体中文版软件大小:154MB更新时间:2013-04-191、首先启动Photoshop cs5,执行文件-新…

painter怎么使用画笔中的马克笔画

painter怎么使用画笔中的马克笔画

画图,马克笔,电脑软件,painter,Painter中画笔有很多样式,今天我们就来看看画笔中马克笔的使用方法。软件名称:Corel Painter(绘画软件) 2018 官方正式版(附注册机) 在线安装包 64位软件大小:994KB更新时间:2017-06-301、打开Painter软件,鼠标左…

CentOS 5.4搭建DHCP服务

CentOS 5.4搭建DHCP服务

服务,电脑软件,CentOS,DHCP,系统环境:DHCP服务器CentOS 5.4客户端Windows XP SP31、查看服务器IP地址2、检测系统是否已经安装DHCP服务,建立光盘挂载点挂载光盘3、进入光盘并查看内容,并安装DHCP服务安装包4、检测DHCP服务安装包的情况5、查看…

JavaScript使用FileReader实现上传

JavaScript使用FileReader实现上传

上传,效果,电脑软件,JavaScript,FileReader,FileReader是HTML5 File API的一部分。它实现了一种异步文件读取机制。可以把FileReader想象为XMLHttpRequest,区别只是它读取的是文件系统,而不是远程服务器。为了读取文件中的数据,FileReader提供…

win2008 r2系统iis7中如何设置ip限

win2008 r2系统iis7中如何设置ip限

系统,如何设置,电脑软件,ip,iis7中设置ip限制的方法如图所示先进入IP地址和域限制,如果没有则需要功能角色中添加此功能。默认禁止一切未授权的客户端访问。设置允许访问的网段。…

excel表格怎么设置打印铺满纸张

excel表格怎么设置打印铺满纸张

设置,方法,表格,纸张,铺满,  有时excel过短或者过长,我们想把这些内容占满一张a4纸张,过短的我们可以通过调整单元格宽、高及文字大小,过长的可以通过缩放等方法,下面给大家分享excel打印设置怎么把a4纸占满的方法,欢迎大家来到学习。excel表…

详谈构造函数加括号与不加括号的区

详谈构造函数加括号与不加括号的区

构造函数,括号,不加,区别,电脑软件,如下所示://首先定义一个构造函数Hellofunction Hello(){  alert(1);}//定义一个函数表达式var getName = function(){  alert(2);}//实例化对象,下面这两个如果构造函数没有形参的话,实例化的时候构造函数可以不…

jQuery使用bind函数实现绑定多个事

jQuery使用bind函数实现绑定多个事

事件,函数实现,绑定,方法,多个,本文实例讲述了jQuery使用bind函数实现绑定多个事件的方法。分享给大家供大家参考,具体如下:在jQuery中绑定多个事件名称是,使用空格隔开,举例如下:$("#foo").bind("mouseenter mouseleave", function() { $(t…

JavaScrpt判断一个数是否是质数的

JavaScrpt判断一个数是否是质数的

实例代码,质数,个数,电脑软件,JavaScrpt,废话不多说了,直接给大家贴代码了<script> //1、非正则实现 function isPrime(num) { // 不是数字或者数字小于2 if(typeof num !== "number" || !Number.isInteger(num)) { // Numbe…

怎么在word2013中制作带框字符在wo

怎么在word2013中制作带框字符在wo

字符,方法,电脑软件,strong,  WORD文字处理软件其功能十分强大,自身拥有专业、优雅、美观、省时、易操作等特点,可以说是当前全球使用人群最为广泛的文档工具。下面小编就教你怎么在word2013中制作带框字符。word2013中制作带框字符的方…