zoukankan      html  css  js  c++  java
  • JavaScript程序开发(十二)—Array中常用方法

    栈方法

      ECMAScript中数组提供了一种让数组的行为类似于其他数据结构的方法。栈是一种LIFO(后进先出)的数据结构,也就是最后插入的数据最先被移除。栈中的插入(叫推入)和移除(叫弹出)只发生在一个位置,就是栈的顶部。ECMAScript为数组专门提供了push()和pop()方法,以便实现类似栈的行为。

      push()方法可以接收任意的参数,把它们逐个插入到数组的末尾,并返回修改后数组的长度。而pop()方法则从最后一项开始移,除减少数组的length值,然后返回被移除的项。如下代码实例:

    <script type="text/javascript">
        var colors = new Array();
        var cont = colors.push("red","black");
        document.write(cont);  //2
        var cont = colors.push("green");
        document.write(cont);  //3
        var item = colors.pop();
        document.write(item);  //green
    </script>

    队列方法

    栈结构的访问规则是LIFO(后进先出),而队列的访问规则则是FIFO(先进先出)。队列在列表的末尾添加项,在列表的前端移除项。前面已经了解到数组的push()方法是向数组的末尾追加项,现在是只需要一个方法实现从数组的前端移除项就可以实现数组模拟队列方法了。ECMAScript提供了shift()方法实现这一操作。shift()方法能够移除数组的最先插进去的项(也可以说是第一项)并返回该项,同时数组长度减1,结合push()和shift(),就可以实现数组模拟队列操作了。如下代码实例:

    <script type="text/javascript">
        var colors = new Array();
        var cont = colors.push("red","green");
        document.write(cont);  // 2
        var item = colors.shift();
        document.write(item); // green
        var num = colors.length;
        document.write(num);  //1
    </script>

      ECMAScript还为数组提供了一个unshift()方法,顾名思义,这个方法的功能和shift()正好相反,它可以在数组的最前面插入任意个数组项并返回新数组的长度。同时使用unshfit()和pop()可以从相反的方向来模拟队列。

     

  • 相关阅读:
    由于取消了脚本支持,无法查看访问统计,也办法放gg广告了,本站更新速度降低.
    关于ASP循环表格的问题之解答
    STL中map用法详解
    vector与list的区别
    mysql联合索引 sql索引使用
    如何让linux/Centos 32位支持大于4G内存
    mysql事务
    Mysql InnoDB中的查询事务模式与锁定select ..for update
    linux 查看系统版本
    如何在64位的Linux中运行32位的应用程序
  • 原文地址:https://www.cnblogs.com/yansj1997/p/2528823.html
Copyright © 2011-2022 走看看