问题描述
- 关于使用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不是一样吗
解决方案
2个!!是为转成布尔变量,加不加无所谓。
"ActiveXObject" in window是为了兼容IE11,IE11不支持window.ActiveXObject,会提示undefined
时间: 2024-10-28 18:55:52