zoukankan      html  css  js  c++  java
  • JavaScript中的数组

    JavaScript中的数组

    Array是JavaScript中常用的类型,并且JavaScript中的数组和其他语言的数组有比较大的区别。JavaScript中数组中存放的数据类型不一定相同,而且数组的长度也是可改变的。

    下面记录一下Array的常用操作:

    一 新建数组

    新建数组可以用一下方法:

    复制代码

    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];//创建一个数组变量
    var obj1 = new Array('zdy',22,'湖北武汉','计算机科学与技术');
    var obj2 = new Array(4);
    obj2[0] = 'zdy';
    obj2[1] = 22;
    obj2[2] = '湖北武汉';
    obj2[3] = '计算机科学与技术';

    复制代码

    上面方式创建数组其实是等价的,输出:

    alert(obj);         //返回zdy,22,湖北武汉,计算机科学与技术
    alert(obj1);        //返回zdy,22,湖北武汉,计算机科学与技术
    alert(obj2);        //返回zdy,22,湖北武汉,计算机科学与技术

    前面提到的JavaScript中数组里面存放的数据类型不一定要一致,所以,我们还可以创建如下的数组:

    复制代码

    var obj3 = [
        'zdy',
        [1,'2',true],
        {
            name:'zdy',
            age:22,
            address:'湖北武汉'
        }
    ];

    复制代码

    下面看看输出的情况:

    alert(obj3);//返回 zdy,1,2,true,[object Object]
    alert(obj3[1][2]);//返回 true
    alert(obj3[2].address);//返回 湖北武汉

    二 数组中常用的方法

    1.toString()/toLocaleString()/valueOf()方法

    对象或者数组都有这三个方法,这三个返回返回值一样,就是将数组拼接成字符串返回,默认情况下以逗号分隔。例如:

    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];//创建一个数组变量
    alert(obj.toString());      //toString()方法,返回zdy,22,湖北武汉,计算机科学与技术
    alert(obj.toLocaleString());   //toLocaleString()方法,返回zdy,22,湖北武汉,计算机科学与技术
    alert(obj.valueOf());       //valueOf()方法,返回zdy,22,湖北武汉,计算机科学与技术
    2.join()方法

    上面三个方法返回的字符串是以逗号分隔,如果我们需要换成其他的分隔符的话,就需要用到join方法,该方法将会把字符号按照指定的字符拼接后返回。

    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];
    alert(obj.join("|"));            //返回 zdy|22|湖北武汉|计算机科学与技术
    3.栈方法-push()/pop()

    JavaScript提供了push()/pop()方法,使得我们可以想操作栈(先进后出)一样操作数组,数组的插入和删除均在栈顶(数组的末尾)进行。

    pusp()方法可以接受任意数量的参数,作用是将这些参数添加到数组的末尾,并返回添加后数组的长度。

    pop()则是将数组的最后一个元素删除,并返回删除的元素。

    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];//创建一个数组变量
    alert(obj.push("计算机",160)); //向数组的末尾追加元素,返回6
    alert(obj);        //返回 zdy,22,湖北武汉,计算机科学与技术,计算机,160
    alert(obj.pop());    //删除数组的最后一个元素,并返回删除的元素 160
    alert(obj);  //返回 zdy,22,湖北武汉,计算机科学与技术,计算机
    4.队列方法-push()/shift()/unshift()

    JavaScript也提供了shift()/unshift()方法,使得我们可以想操作队列(先进先出)一样操作数组,数组的插入和删除均在分别在对尾(数组的末尾)和对头(数组首部)进行。

    pusp()方法可以接受任意数量的参数,作用是将这些参数添加到数组的末尾,并返回添加后数组的长度。

    shift()方法可以从数组的前端删除一个元素,并返回删除的元素。

    unshift()方法可以从数组的前端插入一个元素,并返回新数组的长度。

    复制代码

    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];//创建一个数组变量
    alert(obj.push("添加的元素"));//向数组的末尾追加一个元素,返回5
    alert(obj); //返回 zdy,22,湖北武汉,计算机科学与技术,添加的元素
    alert(obj.shift());//删除数组中的第一个元素,返回删除的元素 zdy
    alert(obj); //返回 22,湖北武汉,计算机科学与技术,添加的元素
    alert(obj.unshift("新增首部元素"));//在数组的首部加入新元素,并返回数组的长度 5
    //********注意:在IE中unshift返回的是undefined**********
    alert(obj); //返回 新增首部元素,22,湖北武汉,计算机科学与技术,添加的元素

    复制代码

    三 数组的基本操作

    1.concat()方法

    concat()方法可以基于已有数组创建新数组,用于连接数组。

    var a1 = [1,2,3];
    var a2 = a1.concat(4,5);//创建新数组,并将a1添加两个元素后赋值给a2
    alert(a1);//返回 1,2,3
    alert(a2);//返回 1,2,3,4,5
    2.slice()方法

    slice()方法用于提取数组中的部分元素。

    var a1 = [1,2,3,4,5,6];
    var a2 = a1.slice(2,4);//返回第2到第4个之间的元素,不包括第4个
    alert(a1);//返回 1,2,3,4,5,6
    alert(a2);//返回 3,4
    3.splice()方法

    splice()方法重用来向数组中插入、修改、删除元素。

    //splice中的插入
    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];//创建一个数组变量
    obj.splice(1,0,"新插入的元素1",123); //从第一个开始插入2个元素
    alert(obj);//返回 zdy,新插入的元素1",123,22,湖北武汉,计算机科学与技术

    复制代码

    //splice中的修改
    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];//创建一个数组变量
    alert(obj); //返回 zdy,22,湖北武汉,计算机科学与技术
    alert(obj.splice(1,1,19));//修改第一个元素为19,返回被修改之前的元素 22
    alert(obj); //返回 zdy,19,湖北武汉,计算机科学与技术
    alert(obj.splice(1,2,20,"湖北恩施"));
    //修改从第一个元素开始的两个元素为20和“湖北恩施”
    //返回 19,湖北武汉
    alert(obj);//返回 zdy,20,湖北恩施,计算机科学与技术

    复制代码

    //splice中的删除
    var obj = ['zdy',22,'湖北武汉','计算机科学与技术'];//创建一个数组变量
    alert(obj); //返回 zdy,22,湖北武汉,计算机科学与技术
    alert(obj.splice(1,2));//删除从第一个元素开始的2个元素,返回被删除的元素 22,湖北武汉
    alert(obj); //返回 zdy,计算机科学与技术

    By:念在三角湖畔

       
    职业规划网    网购从这里开始 ( 物美价廉还等什么?!!! )    

    2012夏装新款薄纱拼接性感包臀显瘦party宴会礼服连衣裙子女配胸
    2012夏装新款韩版时尚雪纺皇冠ZUMA正品女装小衫短上衣
    2条包邮 春夏 韩版 糖果色运动休闲松紧腰大码短裤 沙滩裤 热裤
    简约字母韩版百搭露肩小性感随意范儿中长款长袖T恤
    春装 新款 女装豹纹丝绒百搭裙包臀裙打底裙迷你阔摆裙短裙半
    秋水伊人2012新款夏装连衣裙122102023专柜正品代购女裙子夏季新
    秋水伊人2012新款夏装连衣裙122102017专柜正品代购女裙子送礼品
    2012夏季新款大码女装裤夏女七九分弹力韩版潮显瘦打底裤包邮薄款
    春装2012新款 蕴熙韩版女装 修身款打底衫 女式圆领长袖T恤 包邮
  • 相关阅读:
    5G NR系列(四)物理下行共享信道(PDSCH)物理层过程详解
    5G NR系列(三)PDSCH的解调参考信号(DM-RS)
    Mac上重装pycharm打不开的解决方法
    Oracle parallel理解
    V$ASM_DISKGROUP视图信息解读
    深入了解 Oracle Flex ASM 及其优点
    使用typora和印象笔记高效输出
    Centos7.6部署k8s 集群
    DBA日常职责
    利用DCLI命令实现跨机器检查
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/2509234.html
Copyright © 2011-2022 走看看