一、数组 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 数组常用操作方法的更多相关文章

  1. JavaScript数组常用操作方法

    ES5操作数组的方法 1.concat() concat() 方法用于连接两个或多个数组.该方法不会改变现有的数组,仅会返回被连接数组的一个副本. var arr1 = [1,2,3]; var ar ...

  2. js数组常用操作方法小结(增加,删除,合并,分割等)

    本文实例总结了js数组常用操作方法.分享给大家供大家参考,具体如下: var arr = [1, 2, 3, 4, 5]; //删除并返回数组中第一个元素 var theFirst = arr.shi ...

  3. javascript数组常用的遍历方法

    本篇文章给大家带来的内容是关于javascript数组常用的遍历方法(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 前言 本文主要介绍数组常见遍历方法:forEach.m ...

  4. JavaScript数组常用操作

    前言 相信大家都用惯了jquery或者underscore等这些类库中常用的数组相关的操作,如$.isArray,_.some,_.find等等方法.这里无非是对原生js的数组操作多了一些包装. 这里 ...

  5. javascript数组及操作方法

    数组及操作方法 数组就是一组数据的集合,javascript中,数组里面的数据可以是不同类型的. 定义数组的方法 //对象的实例创建 var aList = new Array(1,2,3); //直 ...

  6. JavaScript数组常用操作总结

    我们在日常开发过程中,使用到原生 JavaScript的时候,有时候会频繁的对数组进行操作,今天我把工作以来,经常用到的有关 JavaScript数组的方法总结一下,方便日后工作的时候查找使用! 一. ...

  7. Javascript 字符串常用操作方法

    1.字符串转换 /* 你可以将一个数字,布尔值,或一个字符串对象转换为字符串 */ var num= 18; var str1 = num.toString(); //'18' var str2 = ...

  8. 二 Array 数组常用操作方法

    数组链接 Array 构造上的方法 一.Array.from() Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable) ...

  9. JavaScript数组常用的方法

    改变原数组: ※ push,pop,shif,unshift,sort,reverse ※ splice 不改变原数组: ※ concat,join→split,toString,slice push ...

随机推荐

  1. Design and Analysis of Algorithms_Divide-and-Conquer

    I collect and make up this pseudocode from the book: <<Introduction to the Design and Analysis ...

  2. OpenCV 轮廓基本特征

     http://blog.csdn.net/tiemaxiaosu/article/details/51360499 OpenCV 轮廓基本特征 2016-05-10 10:26 556人阅读 评论( ...

  3. Windows Phone 八、文件读写IO

    文件存储的类型 •本地应用文件: •ApplicationData.Current.LocalFolder: •漫游应用文件: •ApplicationData.Current.RoamingFold ...

  4. 在Ubuntu14.04_ROS_indigo上安装Kinect2驱动和bridge

    小乌龟:大乌龟,你这两周干么呢? 大乌龟:在Ubuntu14.04 ROS_indigo上装Kinect2的驱动和bridge 小乌龟:就装个驱动有什么难的 大乌龟:你说的对小乌龟,这确实不是问题,但 ...

  5. python学习笔记之基础二(第二天)

    1.编码转换介绍        unicode是最底层.最纯的,会根据终端的编码进行转化展示 一般硬盘存储或传输为utf-8(因为省空间.省带宽),读入内存中为unicode,二者如何转换 a = ' ...

  6. Infinite loop when using cookieless session ID on Azure

    If you use cookieless session ID and deploy them on Azure, you might get infinite loop when you quer ...

  7. s3c2440液晶屏驱动 (内核自带) linux-4.1.24

    自带有一部分驱动的配置信息,只要修改这部分就能支援 不同的液晶屏 - /arch/arm/mach-s3c24xx/mach-smdk2440.c 另一部分在 /drivers/video/fbdev ...

  8. Java使用DatagramSocket

    转自:http://book.51cto.com/art/201203/322540.htm Java使用DatagramSocket代表UDP协议的Socket,DatagramSocket本身只是 ...

  9. Struts2 基本配置

    Struts2是一个优秀的MVC框架,也是我比较喜欢用的框架.它个各种配置基本都可以集中在一个xml文档中完成.现在让我们看看如何简单几步实现常用功能. 一.搭建Struts2的开发环境 1)首先是利 ...

  10. [转] How to debug a ARM Cortex-M hard fault exception

    how to debug a ARM Cortex-M hard fault exception