2 sindelhok sindelhok 于 2016.02.23 12:00 提问

关于使用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个回答

showbo
showbo   Ds   Rxr 2016.02.23 12:10
已采纳

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

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

sindelhok
sindelhok 你帮我解答过好几个问题了 非常感谢~
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!