yishuixs
2015-10-15 07:43
采纳率: 74.7%
浏览 4.1k
已采纳

MSXML2.XMLHttp.6.0与 Microsoft.XMLHTTp有什么区别?

今天看到有两种IE创建XMLHttpRequset对象的方式,不知道哪种正确,哪位能解惑一下,谢谢:
第一种:

if(window.ActiveXObject){
    var version = [
        'MSXML2.XMLHttp.6.0',
        'MSXML2.XMLHttp.3.0',
        'MSXML2.XMLHttp'
    ];
    for(var i=0; i<version.length; i++){
        try{
            return new ActiveXObject(version[i]);
        }catch(e){
            //skip
        }
    }
}else{
    throw new Error('does not support XHR');
}

第二种:

if(window.ActiveXObject){
    return new ActiveXObject('Microsoft.XMLHTTP');
} 
  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • WorldMobile 2015-10-15 08:31
    已采纳

    Msxml2.XMLHTTP是高版本,受msxml3.dll+支持

    Microsoft.XMLHTTP是低本,一般是msxml2.6以下版本使用

    知识普及:

    msxml指微软的xml语言解析器,用来解释xml语言的。就好像html文本下载到本地,浏览器会检查html的语法,解释html文本然后显示出来一样。要使用xml文件就一定要用到xml parser。不过不仅仅微软有,像ibm,sun都有自己的xml
    parser。

    它的全名是:「Microsoft XML Core Services」,主要是用来执行或开发经由 XML 所设计的最新应用程序。微软正式发布了其XML的核心服务组件---MSXML 4.0。和MSXML 3.0相比,MSXML 4.0提供了大量的新功能和功能改进。其中包括:对XML模式语言的支持,更快的分析器和XSLT引擎,对XML流更好的处理,更好的一致性支持。MSXML
    4.0并不是MSXML 3.0的替代产品,因为在3.0中的一些过时功能已经在4.0中彻底去除了。所以4.0可以和3.0(甚至更早的版本)同时安装。

    可以参考这个
    http://m.blog.csdn.net/blog/hellomaya007/8758863

    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题