zoukankan      html  css  js  c++  java
  • JavaScript数组函数unshift、shift、pop、push使用实例

    如何声明数组

    s中数组的声明可以有几种方式声明

    复制代码代码如下:

    var tmp = [];  // 简写模式
    var tmp = new Array(); // 直接new一个
    var tmp = Array();  // 或者new也可以


    在new数组的时候可以传入一个参数,表示数组的初始化长度

    复制代码代码如下:

    // new的时候传入一个参数表示初始化数组长度
    var tmp = new Array(3); 
     
    alert(tmp.length);  // 3


    但如果你想创建一个只有一个元素3的数组,那么使用 new 方法是不能实现的,因为系统会把你传入的3当作数组的长度,除非你使用引号引起来当作字符串,如

    复制代码代码如下:

    var tmp = new Array('3'); 
    alert(tmp);  // 3


    我们可以使用简写模式创建数组,这样就可以创建只有一个数字元素3的数组

    复制代码代码如下:

    var tmp = [3]
    alert(typeof tmp[0]);  // number


    也可以初始多个元素,并且元素的值可以是任意类型

    复制代码代码如下:

    // 简约模式创建数组
    // 数组的元素可以是任意一种数据类型
    var tmp = [3,true,8.5,{'name':'lizhong'},['a','b']];
    alert(tmp.length); // 5

    一、unshift 在数组第一个元素前插入元素

    复制代码代码如下:

    // 使用unshift在数组第一个元素前插入元素
    // 返回数组长度
    var tmp = ['a','b'];
    var len = tmp.unshift('c');
    alert(len); // 3
    alert(tmp); // c,a,b


    也可以一次插入多个元素,顺序依次从左边排起

    复制代码代码如下:

    // 使用unshift在数组第一个元素前插入元素
    // 返回数组长度
    var tmp = ['a','b'];
    var len = tmp.unshift('c','d');
    alert(len); // 4
    alert(tmp); // c,d,a,b

    二、shift弹出数组第一个元素,返回被弹出的元素值

    小实例:

    复制代码代码如下:

    // 使用shift弹出数组第一个元素
    // 返回被弹出的元素值
    var tmp = ['a','b','c'];
    var val = tmp.shift();
    alert(val); // a
    alert(tmp); // b,c


    如果是一个空数组:

    复制代码代码如下:

    // 使用shift弹出数组第一个元素
    // 返回被弹出的元素值
    var tmp = [];
    var val = tmp.shift();
    alert(val); // undefined
    alert(tmp); // 空

    三、push在数组末尾添加元素

    跟unshift相反,push在数组末尾添加元素,返回添加元素以后的数组长度

    复制代码代码如下:

    // 使用push在数组末尾添加多个元素
    // 返回数组最新长度
    var tmp = ['a','b','c'];
    var len = tmp.push('d');
    alert(len); // 4
    alert(tmp); // a,b,c,d


    也可以一次添加多个元素

    复制代码代码如下:

    // 使用push在数组末尾添加多个元素
    // 返回数组最新长度
    var tmp = ['a','b','c'];
    var len = tmp.push('d','e','f');
    alert(len); // 6
    alert(tmp); // a,b,c,d,e,f

    四、pop函数删除数组末尾元素

    跟shift相反,pop弹出的是数组末尾元素,返回被弹出的元素值

    复制代码代码如下:

    // 使用pop弹出数组末尾元素
    // 返回被弹出的元素值
    var tmp = ['a','b','c'];
    var val = tmp.pop();
    alert(val); // c
    alert(tmp); // a,b


    如果数组为空,返回undefined

    复制代码代码如下:

    // 使用pop弹出数组末尾元素
    // 返回被弹出的元素值
    var tmp = [];
    var val = tmp.pop();
    alert(val); // undefined
    alert(tmp); // 空


     
    利用以上四个函数,我们可以做一些队列处理,具体案例就不写代码了。
    push功能其实也可以这么实现 

    复制代码代码如下:

    var tmp = ['a','b','c'];
    tmp[tmp.length] = 'd';
    alert(tmp); // a,b,c,d


    注意:以上四个函数unshift、shift、pop、push函数操作都会在数组本身上修改。

  • 相关阅读:
    Java学习--设计模式之创建型模式
    Java学习--设计模式简介
    Spring MVC 学习总结(十)——Spring+Spring MVC+MyBatis框架集成(IntelliJ IDEA SSM集成)
    Spring MVC 学习总结(九)——Spring MVC实现RESTful与JSON(Spring MVC为前端提供服务)
    Spring MVC 学习总结(八)——Spring MVC概要与环境配置(IDEA+Maven+Tomcat7+JDK8、示例与视频)
    Spring MVC 学习总结(六)——Spring+Spring MVC+MyBatis框架集成
    Spring MVC 学习总结(五)——校验与文件上传
    Spring MVC 学习总结(四)——视图与综合示例
    Spring MVC 学习总结(三)——请求处理方法Action详解
    Spring MVC 学习总结(二)——控制器定义与@RequestMapping详解
  • 原文地址:https://www.cnblogs.com/susanws/p/5386602.html
Copyright © 2011-2022 走看看