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

     

  • 相关阅读:
    Hadoop 实现 TFIDF 计算
    关于Elasticsearch 使用 MatchPhrase搜索的一些坑
    SpringBoot jar包中资源加载问题
    gradle 将依赖打入Jar包的方法
    ES 在聚合结果中进行过滤
    Java c# 跨语言Json反序列化首字母大小写问题
    hadoop is running beyond virtual memory limits问题解决
    hadoop环境运行程序出现 Retrying connect to server 问题
    CSS的初步认识,基本选择器(CSS day1)
    day19 time模块
  • 原文地址:https://www.cnblogs.com/yansj1997/p/2528823.html
Copyright © 2020-2023  润新知