判断IE各版本(精简版)

var isIE=!!window.ActiveXObject;

var isIE6=isIE&&!window.XMLHttpRequest;

var isIE8=isIE&&!!document.documentMode;

var isIE7=isIE&&!isIE6&&!isIE8;

if (isIE){

if (isIE6){

alert("ie6″);

}else if (isIE8){

alert("ie8″);

}else if (isIE7){

alert("ie7″);

}

}

上述是一般常用的JavaScript用来检测浏览器为IE哪个版本的代码。

而由于今年1月一位俄国人,利用了IE与标准浏览器在处理数组的toString方法的差异,完美的利用6bytes:!-[1,]完成了对是否为IE浏览器的检测 。而之前最短代码为:!+”v1″的7bytes。利用这些发现我们同样可以使我们的代码写的更短更有艺术。如今检测是否为IE6其实可以写成

!-[1,]&&!window.XMLHttpRequest

这个代码在实际使用中还是颇为有用的,既然能写的更短何乐而不为呢。相对于之前那大段累赘的分析navigator然后正则比较的方式当然效率更高,代码更简洁完全没有不用道理。在JavaScript编写过程中应该多多的利用诸如||、&&、!、!!这类的运算符,不光是在if()这样的情况下。 

link

评论

Popular Posts

随身WiFi折腾指南: 解锁、刷机与DIY

mihomo各平台客户端下载(windows, android, macos)

常用的国内外延迟测速链接(generate_204)

金山PDF教育版(WPS PDF独立版)

解决Ubuntu桌面上Free Download Manager无法打开的问题

Deskreen - 局域网设备作为电脑副屏(仅需要浏览器)

ungoogled-chromium浏览器各平台版本下载(windows, android, macos, linux)

90个你不知道的冷门知识及精彩点评

解决MacBook重装系统报错"无法与恢复服务器取得联系"

整理RackNerd VPS促销活动机型表格