Javascript 数组常用操作方法
一、数组 Array
1、创建数组
/* 构造函数 */
var arr1 = new Array(); //创建一个空数组
var arr1 = new Array(5); //创建指定长度数组(数组长度随时可以变,用处不大)
var arr1 = new Array(2, 'hello', new Date()); //创建数组,并带初始化数值
/* 字面量 */
var aar2 = [] //创建一个空数组(等同于调用无参构造函数)
var aar2 = [5,8] //创建一个带值的数组
2、元素的添加和删除
/* 直接使用索引添加(index没必要连续,但数组长度会有变化)*/
var a= [1,2,3];
a[3] = 5;
console.log(a); //1,2,3,5 /* unshift:将参数添加到原数组开头,并返回数组的长度 */
var a= [1,2,3];
var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3] b:5 /* shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined */
var a= [1,2,3];
var b = a.shift(); // a:[2,3] b:1 /* push:将参数添加到原数组末尾,并返回数组长度 */
var a= [1, 2, 3];
var b = a.push(4,5); //a:[1,2,3,4,5] b:5 /* pop:删除原数组最末项,并返回删除元素的值;如果数组为空则返回undefined */
var a= [1,2,3];
var b = a.shift(); // a:[1,2] b:3
3、数组连接
var a = [1,2,3];
var b = [4,5];
console.log(a.concat(b)); //1,2,3,4,5
console.log(a); //1,2,3
console.log(b); //3,4
4、splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,...
/* splice 返回一个由删除元素组成的新数组,没有删除则返回空数组 */
var a = [1,2,3,4,5];
var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4] var b = a.splice(0,0,-2,-1); //同unshift var b = a.splice(0,1); //同shift var b = a.splice(a.length,0,6,7); //同push var b = a.splice(a.length-1,1); //同pop
5、reverse:将数组反序
var a = [1,2,3,4,5];
var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1]
6、sort(orderfunction):按指定的参数对数组进行排序,规则必须是函数;默认是按字符编码进行排序
var arr1 = ['jason', 'ada', 'nick', 'hi'];
console.log(arr1.sort()); //['jason', 'ada', 'nick', 'hi'] /* 将数组从小到大排序 */
var arr1 = [2,1,5,4,3];
var arr2 = arr1.sort(function(a,b){
return a-b; //返回b-a 则按从大到小排序
});
console.log(arr2); //1,2,3,4,5 /* 请根据每个元素的i属性,由小到大,排序如下数组 */
var arr1 = [{i:5,v:1},{i:2,v:4},{i:3,v:2},{i:1,v:5},{i:4,v:3}];
var aar2 = aar1.sort(function(a,b){
return a.i - b.i;
});
console.log(arr2);
7、slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组
var a = [1,2,3,4,5];
var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5]
8、join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符
var a = [1,2,3,4,5];
var b = a.join('|'); //a:[1,2,3,4,5] b:'1|2|3|4|5'
Javascript 数组常用操作方法的更多相关文章
- JavaScript数组常用操作方法
ES5操作数组的方法 1.concat() concat() 方法用于连接两个或多个数组.该方法不会改变现有的数组,仅会返回被连接数组的一个副本. var arr1 = [1,2,3]; var ar ...
- js数组常用操作方法小结(增加,删除,合并,分割等)
本文实例总结了js数组常用操作方法.分享给大家供大家参考,具体如下: var arr = [1, 2, 3, 4, 5]; //删除并返回数组中第一个元素 var theFirst = arr.shi ...
- javascript数组常用的遍历方法
本篇文章给大家带来的内容是关于javascript数组常用的遍历方法(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 前言 本文主要介绍数组常见遍历方法:forEach.m ...
- JavaScript数组常用操作
前言 相信大家都用惯了jquery或者underscore等这些类库中常用的数组相关的操作,如$.isArray,_.some,_.find等等方法.这里无非是对原生js的数组操作多了一些包装. 这里 ...
- javascript数组及操作方法
数组及操作方法 数组就是一组数据的集合,javascript中,数组里面的数据可以是不同类型的. 定义数组的方法 //对象的实例创建 var aList = new Array(1,2,3); //直 ...
- JavaScript数组常用操作总结
我们在日常开发过程中,使用到原生 JavaScript的时候,有时候会频繁的对数组进行操作,今天我把工作以来,经常用到的有关 JavaScript数组的方法总结一下,方便日后工作的时候查找使用! 一. ...
- Javascript 字符串常用操作方法
1.字符串转换 /* 你可以将一个数字,布尔值,或一个字符串对象转换为字符串 */ var num= 18; var str1 = num.toString(); //'18' var str2 = ...
- 二 Array 数组常用操作方法
数组链接 Array 构造上的方法 一.Array.from() Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable) ...
- JavaScript数组常用的方法
改变原数组: ※ push,pop,shif,unshift,sort,reverse ※ splice 不改变原数组: ※ concat,join→split,toString,slice push ...
随机推荐
- Testlink部署全攻略
部署前准备: xampp,我下载的链接:https://www.apachefriends.org/download.html Testlink,下载地址:https://sourceforge.ne ...
- HDU 1880 魔咒词典(字符串哈希)
题目链接 Problem Description 哈利波特在魔法学校的必修课之一就是学习魔咒.据说魔法世界有100000种不同的魔咒,哈利很难全部记住,但是为了对抗强敌,他必须在危急时刻能够调用任何一 ...
- jQuery File Upload done函数没有返回
最近在使用jQuery File Upload 上传图片时发现一个问题,发现done函数没有callback,经过一番折腾,找到问题原因,是由于dataType: ‘json’造成的,改为autoUp ...
- 飞机大战编写以及Java的面向对象总结
面向对象课程完结即可编写一个简单的飞机大战程序.我觉得我需要总结一下 飞机大战中类的设计: 父类:FlyingObject(抽象类) 接口:Award .Enemy 子类:Hero.Bullet.Ai ...
- 渗透技术--SQL注入写一句话木马原理
讲一下SQL注入中写一句话拿webshell的原理,主要使用的是 SELECT ... INTO OUTFILE 这个语句,下面是一个语句的例子: SELECT * INTO OUTFILE 'C:\ ...
- C语言回顾-指针
1.指针:地址 指针变量:存放指针的变量 指针变量的定义:数据类型 *指针变量名 或者 数据类型* 指针变量名 指针变量的初始化:int *p=&a;int *p=NULL;(不能先定义后初始 ...
- js学习心得之思维逻辑与对象上下文环境(一)
html5 canvas矩形绘制实例(绘图有js 实现) html: <canvas id="myCanvas" width="200" height=& ...
- 【金】nginx+uwsgi+django+python 应用架构部署
网上有很多这种配置,但就是没一个靠普的,费了好大的力气才完成架构部署.顺便记录一下. 一.部署前的说明 先安装好 python,django,uwsgi,nginx软件后.后配置运行的软件是分先后的. ...
- JVM内存管理
前几天公司的郑大晔校上,XXX同事做了JVM的Session,于是趁端午节放假的功夫,研究了一些JVM相关的知识. 在Java生态系统中,JVM占据至关重要的作用,就像一个适配器,它向编程语言(主要是 ...
- 解决ADB server didn't ACK问题,连上手机问题
出现如下情况 ADB server didn't ACK* failed to start daemon * 解决办法: 方法一: (1)查看任务管理器,关闭所有adb.exe,或者运行->cm ...