documentElement.selectNodes("a")   
  documentElement.getElementsByTagName("a")   但就达到相同的目的,两种方法谁更快一些?

解决方案 »

  1.   

    个人觉得是documentElement.getElementsByTagName("a") 快吧
      

  2.   

    都一样吧!都是dom!!要快用SAX
      

  3.   

    如果dom不是很大的,差别不大的,比较没太大意义。真要快的话就像2楼说的用sax
      

  4.   

    实践即真理:
    var stringToDom=function(text) {
        var doc;
        if(window.ActiveXObject) {
            doc = new ActiveXObject("MSXML2.DOMDocument");
            doc.loadXML(text).documentElement;
        } else {
            doc = (new DOMParser()).parseFromString(text,"text/xml");
        }
        return doc;
    }
    var xmlDoc=stringToDom("<body><a href='a'>a</a><a href='b'>b</a></body>");
    var c,d1=new Date();
    for(var i=0;i<100000;i++){
        c=xmlDoc.getElementsByTagName("a");
    }
    document.write("getElementsByTagName: ",new Date()-d1);
    d1=new Date();
    for(var i=0;i<100000;i++){
        c=xmlDoc.selectNodes("a");//ff好像出不来
    }
    document.write("<br/>selectNodes: ",new Date()-d1);
      

  5.   

    它俩实现的目的不一样吧。
    documentElement.selectNodes("a") 中的a 包括着路径信息的吧。