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()可以从相反的方向来模拟队列。

     

  • 相关阅读:
    使用ueditor实现多图片上传案例——Servlet层(UploadServlet)
    使用ueditor实现多图片上传案例——截取字符串层Util(SubString_text)
    [转载]oracle删除数据后的恢复
    [转载]oracle删除数据后的恢复
    为什么在定义hashcode时要使用31这个数呢?
    为什么在定义hashcode时要使用31这个数呢?
    [转载]hashCode和equals
    [转载]hashCode和equals
    Oracle HINT的用法
    Oracle HINT的用法
  • 原文地址:https://www.cnblogs.com/yansj1997/p/2528823.html
Copyright © 2011-2022 走看看