沧海残阳 2016-02-23 04:00 采纳率: 100%
浏览 4460
已采纳

关于使用activeXObject判断IE浏览器

众所周知,IE有个activeXObject对象,来实现浏览器对本地文件的读写; 而其他的浏览器都是使用的XMLHttpRequest对象.

    今天想到了利用IE独有的activeXObject对象来判断是否为IE浏览器,在网上搜到了如下代码

    function isIE() {
        if (!!window.ActiveXObject || "ActiveXObject" in window)  
        return true;  
    else  
        return false;  
}

    但是关于这段代码, 我想知道为什么window.ActiveXObject前面要加两个!!,有什么具体讲究吗?

    然后为什么要这样判断?  "activeXObject" in window 和 window.activeXObject不是一样吗
  • 写回答

1条回答 默认 最新

  • 斯洛文尼亚旅游 2016-02-23 04:10
    关注

    2个!!是为转成布尔变量,加不加无所谓。

    "ActiveXObject" in window是为了兼容IE11,IE11不支持window.ActiveXObject,会提示undefined

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?