• 技术文章 >web前端 >js教程

    js链表使用详解

    php中世界最好的语言php中世界最好的语言2018-04-18 15:17:40原创1489
    这次给大家带来js链表使用详解,js链表使用的注意事项有哪些,下面就是实战案例,一起来看一下。

    如下所示:

    <!doctype html>
    <html lang="en">
     <head>
     <meta charset="UTF-8">
     <title>Document</title>
     <script>
      function Node(v){
        this.value=v;
        this.next=null;
      }
      function ArrayList(){
        this.head=new Node(null);
        this.tail = this.head;
        this.append=function(v){
          node = new Node(v);
          this.tail.next=node;
          this.tail=node;
        }
        this.insertAt=function(ii,v){
          node = new Node(v);
          //找到位置的节点
          tempNode=this.head;
          for(i=0;i<ii;i++){
            if(tempNode.next!=null){
              tempNode=tempNode.next;
            }else{
              break;
            }
          }
          node.next=tempNode.next;
          tempNode.next = node;
        }
        this.removeAt=function(ii){
          node1=this.head; //要删除节点的前一个节点
          for(i=0;i<ii;i++){
            if(node1.next!=null){
              node1=node1.next;
            }else{
              break;
            }
          }
          node2=node1.next;  //要删除的节点
          if(node2!=null){
            node1.next = node2.next;
            if(node2.next==null){
              this.tail=node1;
            }
          }
        }
        
      }
      function Iterator(arryList){
        this.point=arryList.head;
        this.hasNext=function(){
          if(this.point.next!=null){
            this.point=this.point.next;
            return true;
          }else{
            return false;
          }
        }
        this.next=function(){
          return this.point.value;
        }
      }
      
      var arry = new ArrayList();
      arry.append(1);
      arry.append(2);
      arry.append(3);
      arry.insertAt(1,8);
      arry.insertAt(0,9);
      arry.insertAt(100,100);
      arry.insertAt(1000,1000);
      arry.insertAt(1,200);
      arry.insertAt(200,2000);
      
      iterator = new Iterator(arry);
      while(iterator.hasNext()){
        document.write(iterator.next());
        document.write('<br/>');
      }
     </script>
     </head>
     <body>
     
     </body>
    </html>;

    相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

    推荐阅读:

    HTML标签与DOM节点结合

    JS隐式类型转换总结

    以上就是js链表使用详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:javascript 详解 使用
    上一篇:Node.js文件系统操作 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一文探究Angular中的服务端渲染(SSR)• 深入浅析Node中的进程和线程• react怎么实现列表排序• 一文聊聊Node包管理发展的五个阶段• 带你了解Angular组件间进行通信的几种方法
    1/1

    PHP中文网