JavaScript中常见的数组操作函数及用法
JavaScript中常见的数组操作函数及用法
昨天写了个帖子,汇总了下常见的JavaScript中的字符串操作函数及用法。今天正好有时间,也去把JavaScript中常见的数组操作函数及用法总结一下,这样方便大家准备参考。如果恰好你也在准备各种笔试,希望对你有所帮助。同时,也欢迎补充。
1、数组创建
创建数组应该是最简单的了,有用数组字面量创建和数组构造函数两种方法,见下:
var array1 = new Array();
var array2 = [];
上面是创建数组的最常见的两种方法,其中第二种方法因为简单直观而被开发者推崇。其中,使用构造函数创建数组同样可以接收用于存放于数组的值,如:
var array3 = new Array("num1","num2","num3");//["num1", "num2", "num3"]
同样,如果你传给构造函数的值是一个number,则该number如果大于0,则将是这个新创建数组的长度,如:
var array4 = new Array(5);
array4.length;//5
同样的效果下,我们还是推荐使用字面量的形式创建数组。
2、数组检测
有两种可以检测数组的方式,第一种使用instanceof,如下:
var array5 = [];
array5 instanceof Array;//true
同时,Array也自带了isArray()的方法,如下:
var array6 = [];
Array.isArray(array6 );//true
3、获取数组长度
数组长度可以通过.length获取,如下:
var array7 = [1,2,3,4];
array7.length;//4
同时,数组的长度你也可以随时设置,如果设置的长度超过之前的,则后面的内容会自动补充维undefined,否则会截取有效长度的内容,如下:
var array8 = [1,2,3,4,5];
console.log(array8.length);//5
array8.length = 8;
array8;//[1, 2, 3, 4, 5, undefined × 3] array8.length = 3;
array8;//[1,2,3]
4、获取或者设置数组值
我们可以获取和设置数组的值,这里需要记住的是数组的下标是从0开始的,如下:
var array9 = [1,2,3,4,5,6];
array9[2];//3
array9[2] = 4;
array9[2];//4
5、数组字符串转换
数组转换为字符串可以调用数组自带的toString()方法,返回数组的字符串形式,如下:
var array10 = [1,2,3,4];
array10.toString();//"1,2,3,4"
另外,数组也有另外一个非常有用的函数join(),它接受一个字符串参数,用于插在数组各项之间形成字符串,如下:
var array11 = [1,2,3,4];
array11.join("||");//"1||2||3||4"
6、数组添加和删除项
前面讲过,我们可以设置length自动给数组添加一些undefined的值。同时,我们也可以通过访问一个超过数组本来的长度的数字下标以给数组添加项,如:
var array12 = [1,2,3,4];
array12[5] = 5;
array12[6] = 6;
array12;//[1, 2, 3, 4, undefined × 1, 5, 6]
另外,我们也可以通过push()给数组添加新的元素,如下:
var array13 = [1,2,3,4];
array13.push(5,6);
array13;//[1, 2, 3, 4, 5, 6]
与push()相对的是有一个pop()方法,用以删除数组中的项,且从数组最后一项开始,例如:
var array14 = [1,2,3,4];
array14.pop();//4
array14.pop();//3;
array14;//[1, 2]
同时,我们可以通过delete删除数组某项,但是只会删除该值,恢复默认的undefined,如下:
var array15 = [1,2,3,4,5];
delete array15[1];
array15;//[1, undefined × 1, 3, 4, 5]
另外两个非常有用的方法shift()和unshift(),跟push()和pop()方法类似,其中,shift()方法用以从数组起始位置开始删除元素且返回被删除的元素,如下:
var array16 = [1,2,4,5,6];
array16.shift();//1
array16;[2,4,5,6]
而unshift()与shift()相反,用于向数组起始位置添加元素,并且数组的原来元素分别后移,如下:
var array17 = [1,2,3,4];
array17.unshift(2);//返回数组长度5,下同
array17.unshift(3);
array17.unshift(4);
array17;//[4, 3, 2, 1, 2, 3, 4]
7、数组翻转和排序
我们可以对一个数组进行翻转,也可以让一个数组进行排序,如下:
var array18 = [21,14,54,35,23,44,103];
array18.reverse();//[103, 44, 23, 35, 54, 14, 21]
array18.sort();//[103, 14, 21, 23, 35, 44, 54]
注意,数组默认排序并不是大小,而是按照对应字符串逐个编码排序的。你可以通过给sort()传递一个比较函数,类改变规则,如下:
var array18 = [21,14,54,35,23,44,103];
array18.reverse();//[103, 44, 23, 35, 54, 14, 21]
array18.sort(function(a,b){return a - b;});//[14, 21, 23, 35, 44, 54, 103]
8、数组连接
我们可以把不同的数组连接到一起,如下:
var array19 = [1,2,3];
var array20 = [4,5];
var array21 = array19.concat(array20);//[1, 2, 3, 4, 5]
注意原数组都没有也不会发生改变。
9、数组分割
我们同样可以通过slice()把数组进行分割,它接受一个参数的话表示分割的起始位置,接受第二个可选的参数是表示结束的位置,如下:
var array22 = [1,2,3,4,5,6];
var array23 = array22.slice(4);//5,6
var array24 = array22.slice(2,4);//3,4
注意,分割的数组包含slice()的起始位置而不包含结束位置。
10、最强大的splice()
现在,该讲讲最强大的splice()函数了,它接受三个参数,可实现添加、删除、修改等不同的功能。看下w3school上它的语法,如下:
①添加元素
var array25 = [1,2,3,4,5,6];
array25.splice(2,0,88,77);//[] 返回被删除的元素,这里没有删除,返回为空
array25;//[1, 2, 88, 77, 3, 4, 5, 6]
②修改元素
var array26 = [1,2,3,4,5,6,7];
array26.splice(2,2,33,44);//[3,4]
array26;//[1, 2, 33, 44, 5, 6, 7]
③删除元素
var array27 = [1,2,3,4,5,6,7];
array27.splice(2,2);//[3, 4]
array27;//[1, 2, 5, 6, 7]
结束语
匆匆总结了下,不知道有没有漏下什么关键的函数或者方法,希望大家可以给予补充!
JavaScript中常见的数组操作函数及用法的更多相关文章
- JavaScript中常见的字符串操作函数及用法
JavaScript中常见的字符串操作函数及用法 最近几次参加前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等.如果你经常参加笔试或者也是一个过来人,相信 ...
- 深圳尚学堂:JavaScript中常见的字符串操作
快到春节放假了,春节后又是一大波的找工作热潮,在前端实招聘笔试时,必不可免额会考到关于JavaScript中字符串的处理问题.考的不是你会不会,而是你能不能在不借用XX手册或者XX指南再或者百度谷歌的 ...
- javaScript中关于字符串的操作函数和方法
1.字符串转换 toString():可以将任何类型的数据都转换为字符串 var num= 19; //19 var myStr = num.toString(); //"19" ...
- JavaScript 数组操作函数--转载+格式整理
JavaScript 数组操作函数(部分)--转载+格式整理 今天看了一篇文章,主要讲的对常用的Js操作函数:push,pop,join,shift,unshift,slice,splice,conc ...
- SAS中常见的数组函数
SAS中常见的数组函数有: dim dimk hbound hboundk lbound lboundk 数组函数计萁数组的维数.上下界,有利于写出可移植的程序,数组函数包括:dim(x) 求数组x第 ...
- JavaScript:JavaScript中常见获取对象元素的方法
介绍: javascript中常见的3种获取元素的方法,分别是通过元素ID.通过标签名字和通过类名字来获取 操作如下: 1.getElementById DOM提供了一个名为getElementByI ...
- 【转】《深入理解计算机系统》C程序中常见的内存操作有关的典型编程错误
原文地址:http://blog.csdn.net/slvher/article/details/9150597 对C/C++程序员来说,内存管理是个不小的挑战,绝对值得慎之又慎,否则让由上万行代码构 ...
- 《深入理解计算机系统》C程序中常见的内存操作有关的典型编程错误
对C/C++程序员来说,内存管理是个不小的挑战,绝对值得慎之又慎,否则让由上万行代码构成的模块跑起来后才出现内存崩溃,是很让人痛苦的.因为崩溃的位置在时间和空间上,通常是在距真正的错误源一段距离之后才 ...
- javascript中对字符串的操作总结
原文:javascript中对字符串的操作总结 没听过一句话吗?程序员的世界,不处理字符串就是处理数组.这是群里的一位前辈和我说的,显然这和我之前理解的DOM是javascript的核心的不同的,看了 ...
随机推荐
- 题目1203:IP地址
题目: http://ac.jobdu.com/problem.php?pid=1203 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:3052 解决:1504 题目描述: 输入一个ip地 ...
- MVC之路随记2--Razor基础
1.概述:Razor是mvc 3.0新扩展的内容,是默认的视图引擎,引擎一词可理解为Web Form中<% %>中的变形,但是Razor更加干净,轻量级,简单.使用了该引擎后,文件的后缀名 ...
- django使用ldap认证
pip3 install django-auth-ldap python-ldap urls.py, from app0104 import views urlpatterns = [ url(r'^ ...
- PAT 1072. Gas Station (30)
A gas station has to be built at such a location that the minimum distance between the station and a ...
- 安装mongodb 远程服务器报错
安装的时候百度了各种教程 就是装不上 结果原因看下图吧 后面这神秘代码是什么鬼 加上后就能正常下载了
- mac平台多个php版本快速切换
mac平台多个php版本快速切换 要求所有php版本都是由brew安装 使用brew安装php多版本方法 # brew install php56 # brew install php70 安装切换工 ...
- div CSS样式——两张图片的位置关系
以上是实现将logo图片按照相对位置覆盖在另一张图片上的代码. 通过学习,我学到了以下方法: 将第二张图片定位到第一张图片上. 下面是简单的实现:(假设图都是100*100的) <style&g ...
- 修改hive分区表,在分区列前增加一个字段
本文主要为了测试,在有数据的分区表中增加新的一个非分区字段后,新数据加入表中是否正常. 原始数据 1;zhangsan 2;zhangsan 3;zhangsan 4;lisi 5;lisi 6;li ...
- C(++) Websocket实现扫码二维码登录---GoEasy
最近在做一个扫码登录功能,为此我还在网上搜了一下关于微信的扫描登录的实现方式.当这个功能完成了后,我决定将整个实现思路整理出来,方便自己以后查看也方便其他有类似需求的程序猿些. 要实现扫码登录我们需要 ...
- 论SCRM系统对传统行业的冲击
SCRM(Social Customer Relationship Management)顾名思义是社会型客户关系管理系统,这在当前的电子商务领域是一个创新的概念,由于社交媒体(Social Medi ...