zoukankan      html  css  js  c++  java
  • JavaScript中常用数组方法

    1、concat()

    连接不同的数组,组成一个新的数组:

    var a = [1,2,3];

    var b = [4,5,6];

    var c = a.concat(b);//[1,2,3,4,5,6]返回一个新的数组,不改变原数组

    连接数值:

    var a = [1,2,3];

    var b = a.concat(4, 5, 6);//[1,2,3,4,5,6]返回一个新的数组,不改变原数组

    连接数值和数组:

    var a = [1,2,3];

    var b = 4;

    var c = [5,6];

    var d = a.concat(b, c);//[1,2,3,4,5,6]返回一个新的数组,不改变原数组

    2、join()

    使用指定字符连接数组各项,返回一个字符串,原数组不变

    var a = ['hello','world',undefined, null];

    var b = a.join(‘+’);//"hello+world",undefined和null自动过滤掉

    3、push()

    在数组的末尾加入一项,返回数组的长度,改变原数组

    var a = [1,2,3];

    var b = a.push(4);//c = 4,原数组为[1,2,3,4]

    var c = a.push([5,6]);//c = 5,原数组为[1,2,3,4,[5,6]]

    4、pop()

    从数组的末尾删除一项,返回被删除的项,改变原数组

    var a = [1,2,3];

    a.pop();//return 3,原数组为[1,2]

    5、arrayObject.unshift(newelement1,newelement2,....,newelementX)

    在数组的起始位置处插入项,返回数组的长度,改变原数组

    var a = [2,3,4];

    a.unshift(0,1);//return 5,原数组为[0,1,2,3,4]

    a.unshift([a,b]);/return 5,原数组为[[a,b],1,2,3,4]

    6、shift()

    在数组的起始位置处删除项,返回删除的项,改变原数组

    var a = [1,2,3];

    a.shift();//return 1,原数组为[2,3]

    var b =[[1,2],3,4];

    b.shift();//return [1,2],原数组为[3,4]

    7、reverse()

    反转数组,返回反转后的数组,改变原数组

    var a = [1,2,3];

    a.reverse();//return [3,2,1],原数组为[3,2,1]

    var a = [1,2,[3,4]];
    a.reverse();//return [[3,4],2,1],原数组为[[3,4],2,1]

    8、sort()

    将数组按ASCII排序,返回排序后的数组,改变原数组

    var a=[1,2,3,12,13];

    a.sort()  //返回 [1,12,13,2,3]

    如果按照正常逻辑排序 :

    a.sort(function(a,b){

       return a-b;

    })    //[1,2,3,12,13]

    9、slice(index[, end])

    根据参数指定的索引位置截取数组,返回截取后的新数组,原数组不变

    var a = [1,2,3,4,5,6];

    a.slice(3, 4);// return [4],原数组为[1,2,3,4,5,6]

    a.slice(3);// return [4,5,6],原数组为[1,2,3,4,5,6]

    10、splice(index, howmany, ele1, ele2, …)

    删除数组中指定索引位置的项,然后从该位置处插入指定的项,返回删除的值,改变原数组

    var a = [1,2,3,4,5,6];

    a.splice(2,2,0,0);//return 3,4,原数组的为[1,2,0,0,5,6]

    上面所有的都是在Array.prototype对象上定义
  • 相关阅读:
    YourSQLDba低版本的一个Bug的浅析
    VMware虚拟机(Linux)如何找出系统中磁盘设备对应的硬盘
    SSH登录报pam_unix(sshd:auth): authentication failure的案例
    Linux shell中如何给文本加上行号呢
    Linux查看系统块大小
    存储基础知识:扇区与块/簇
    SQL Server中GETDATE转换时间时注意事项
    SQL Server 2008 R2执行存储过程sp_MailItemResultSets引起大量PREEMPTIVE_OS_WAITFORSINGLEOBJEC等待
    Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool
    SQL Server 2014下Database Mail Engine进程消耗大量CPU资源
  • 原文地址:https://www.cnblogs.com/JDotNet/p/3505662.html
Copyright © 2011-2022 走看看