zoukankan      html  css  js  c++  java
  • 高性能Javascript HTML集合访问的学习笔记

    HTML集合是包含了DOM节点引用的类数组对象。

    document.getElementsByTagName();

    document.images   document.links document.forms   document.forms[0].elements

    HTML集合有length,有索引,但不是真正的数组    没有push 或slice之类的方法     

    HTML集合处于一种“实时状态” 实时存在,这意味着底层文档对象更新时,它也会自动更新,HTML集合与文档一直保持连接,每次你需要更新信息时,都命运 重复执行查询的过程,这下是低效之源

    昂贵的集合

    缓存数组长度  \

    for(var i=0,len = coll.length;i<len;i++) {

    }

    更有将集合转化为数组

    function toArr(coll) {

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

             a[i] = coll[i];

        }

        return a;

    }

    这个写法比较好,for的第一项可用于创建变量,        

    但用此法也不一定好,因为它要两次循环(toArr  一次,遍历数组一次),看情况而定.       

  • 相关阅读:
    CSS3中新增的对文本和字体的设置
    PAT1107:Social Clusters
    Git的一些操作
    PAT1029:Median
    PAT1024:Palindromic Number
    PAT1028:List Sorting
    PAT1035: Password
    PAT1133:Splitting A Linked List
    PAT1017:Queueing at Bank
    PAT1105:Spiral Matrix
  • 原文地址:https://www.cnblogs.com/yushunwu/p/2178081.html
Copyright © 2011-2022 走看看