zoukankan      html  css  js  c++  java
  • javaScript进阶昂贵的集合

    1 var alldivs = document.getElementsByTagName('div');
    2 for (var i = 0; i < alldivs.length; i++) {
    3 document.body.appendChild(document.createElement('div'));
    4
    5 }

    /*函数是一个死循环,每次迭代都执行查询操作*/


    /*集合拷贝到数组,循环数据比循环集合效率高*/

    function toArray(coll) {
      for (var i = 0, a = [], len = coll.length; i < len; i++) {
        a[i] = coll[i];
    
      }
      return a;
    }
    

      

    var coll = document.getElementsByTagName('div');
    var len = coll.length;
    var arr = toArray(coll);
    
    function loopCollection() {
      for (var count = 0; count < coll.length; count++) {
    /*代码处理*/
      }
      }
    
      function loopCollection(coll) {
        for (var count = 0; count < arr.length; count++) {
        /*代码处理*/
    
      }
    }
    

      

    /*读取元素集合的length属性会引发集合进行更新,优化方法很简单,将集合长度缓存为局部变量*/

    function loopCollection() {
      var alldivs = document.getElementsByTagName('div');
      var len = coll.length;
      for (var count = 0; count < coll.length; count++) {
        /*代码处理*/
      }
    }
    /*

    1 当同一个Dom的属性和方法需要多次访问时,最好用一个局部变量缓存此成员
    2 遍历一个集合时,首要的优化原则是把集合混存在局部变量中,并把length缓存在集合外部
    总结*/

  • 相关阅读:
    思考问题的方式
    领域模型驱动设计读书笔记
    Oracle树形表和递归查询
    java中List , Set , Array相互转换
    JAVA两个数组间元素的比较(找出相同或者不同元素)
    java中的过滤器写法
    打印功能--调整表头
    @WebFilter注解
    深入理解JVM-内存模型(jmm)和GC
    vue生命周期函数
  • 原文地址:https://www.cnblogs.com/needrunning/p/2291369.html
Copyright © 2011-2022 走看看