首页 > 教程 > 关键词  > JavaScript判定最新资讯  > 正文

最简洁短小的 JavaScript 判定 IE 浏览器

2010-03-17 10:54 · 稿源:Leeiio Chaos

IE浏览器不管是什么版本,总是跟Web标准有些不太兼容。对于代码工作者来说,自然是苦不堪言,为了考虑IE的兼容问题,不管是写 CSS 还是 JS,往往都要对 IE 特别对待,这就少不了做些判断。本文不讨论如何区分 IE 的样式,仅是 JS 判定 IE 浏览器。

这个目前世界上最短的 Javascript 判定 IE 浏览器的方法来自俄罗斯!它已经在各版本的 IE 以及目前其他流行的浏览器上经过测试,基于 IE 的 Bug,微软虽然已经意识到,但是从来没有纠正过。

<script type='text/javascript'>
var ie = !-[1,];
alert(ie);
</script>

以上代码运行结果:IE 下返回true,其他标准浏览器返回false。!-[1,],仅仅只有 6 bytes!

不过如果反过来判断,标准浏览器返回 true 而 IE 返回 false的话,则可以再缩短一个byte。

<script type='text/javascript'>
notIe = -[1,];

if(-[1,]){
// 标准浏览器代码
}else{
// IE Only的代码
}
</script>

看完了这些,你们是不是很好奇这些是怎么运行的?请继续看下文。

这个 Bug 产生的原因是 IE 会添加一个空数组元素到数组元素的总数里。

[1,]. Length标准浏览器会返回 1 (基于标准的 ECMAscript ,在数组最后的逗号”,”会被忽略,这是为了方便在一列里显示以及自动生成等),但是 IE 会返回 2。当你打印这个数组的时候 IE 将会返回 “1, “,也就是两个元素,而其他标准浏览器将会返回 “1″。

这很容易验证,比如在 IE 和 FF中运行以下代码:

<script type='text/javascript'>
alert([,]==',');
//这是8个字符判定IE
</script>

[1,]实际上浏览器的操作是toString()转换成字符串的操作,-[1,]是将字符串强制转换为数字。而 IE 将会返回 NaN,但是遗憾的是 NaN 并不是一个数字,因为[1,]转换成字符串后的”1,”里面带有逗号。而其他标准浏览器会返回 -1,这是一个非 0 的数字。

你知道,NaN 转换成 Boolean 型将返回 false,所以-[1,]在 IE 下将返回 false。而任何非 0 的数字转换成 Boolean 型(例如-1),在 标准浏览器下都将返回 true。所以我们得到了一个判定结果,!-[1,]在 IE 下返回true,而在其他标准浏览器下返回 false。也就达到了区分判定 IE 浏览器的目的。

当然,如前文所说,这个 Bug 其实微软很早就已经知道,但是却一直没有去修复它,所以在未来的 > IE8 的 IE 浏览器也就不确定是否依旧可以,不过基本上这么多代的 IE 都没有修复,未来的 IE 也不太会去修复的样子。

以下是其他的一些区分判定 IE 浏览器的代码,也可以参考下:

<script type='text/javascript'>
// Option from Dean Edwards:
var ie = /*@cc_on!@*/false;

// Use the commented line:
var ie//@cc_on=1;

// Variation (shorter variable):
var ie = '\v'=='v';

/ / Option to Gareth Hayes (former record-holder):
var ie = !+"\v1";
</ script>

举报

  • 相关推荐
  • AI时代,浏览器的排位赛重新开启

    过去一周,WAIC 带给我们的感官刺激,已经从过去的大模型参数彻底走向AI应用革命。 但是我们所感知到的可能只是庞杂的碎片,如果梳理互联网大厂当下AI 叙事的重点,集体所向,还要从别处寻找答案。 比如,对于信息入口的定义,对于全新AI 交互形态的探索,路线其实越来越明朗。 当 OpenAI 宣布代号为「Aura」的AI浏览器进入开发阶段时,科技圈再次意识到:这场由大模型�

  • 智能手表初代传奇落幕!苹果宣布Apple Watch Series 1将不再提供维修服务

    苹果公司近日宣布,Apple Watch Series 1正式走入历史,不再提供维修服务。 根据苹果的维修政策,产品停售后超过5年但未满7年会被归类为过时产品”,维修需视零件供应情况而定;停售后超过7年则为停产产品”,全面终止所有维修支持。 此次Apple Watch Series 1被降级为停产产品”,意味着未来官方将不再受理其维修服务。 值得注意的是,Apple Watch Series 1并非初代Apple Watch,而是

  • AI 大模型选型指导:一文实测 Kimi‑K2‑Turbo‑Preview 与 Qwen3‑Coder‑Flash

    本文对比分析了Kimi-K2-Turbo-Preview和Qwen3-Coder-Flash两款AI大模型在开发者选型中的表现。K2-Turbo采用MoE架构,激活参数32B,支持128K上下文,在代码调试和自动化流程方面表现突出;Qwen3-Coder为480B参数的MoE模型,原生支持256K上下文,擅长大规模代码库理解和API集成。二者在中级任务表现接近,但K2在复杂可视化任务更优,Qwen3在多轮Agent调用更稳定。建议根据需求选择:注重调试自动化选K2,需要长上下文支持选Qwen3。推荐使用AIbase模型广场进行高效选型对比。

  • 谷歌DeepMind发布Genie 3世界模型:支持实时生成交互式3D环境

    据媒体报道,谷歌DeepMind正式发布了其新一代通用世界模型Genie 3。 该模型能够根据用户的文本提示,快速生成丰富多样的交互式虚拟环境。Genie 3不仅能够以每秒24帧的速度生成720p分辨率的高清交互式3D世界,更创新性地引入了 可提示世界事件” 功能。用户通过简单文本指令,即可实时修改虚拟环境,显著提升了沉浸感与创造力。 DeepMind视Genie 3为迈向通用人工智能(AGI) 的�

  • AI日报:百度推全球首批AI数字员工;Claude Opus4.1出世;谷歌DeepMind发布世界模型Genie 3

    AI日报栏目聚焦人工智能领域最新动态:1)Claude Opus4.1发布,编程能力提升74.5%;2)OpenAI开源GPT-OSS-120B和20B模型;3)谷歌DeepMind推出革命性3D世界模型Genie3;4)谷歌Gemini新增AI故事书生成功能;5)ElevenLabs推出商用AI音乐生成器;6)百度智能云发布首批AI数字员工;7)OpenAI估值或达5000亿美元;8)00后创业者推出云端AI协作开发工具Vinsoo;9)腾讯启动2026校园招聘,重点培养AI人才;10)马斯克宣�

  • 告别“数据录入机器”:ToB智能体如何让CRM回归业务本质

    2025年腾讯全球数字生态大会上,销售易推出首款AI CRM产品NeoAgent,基于大模型技术重构企业销售流程。该产品通过语音指令自动完成客户拜访规划、关联历史数据并生成策略建议,实现从菜单点击到自然对话的交互变革。销售易通过"三阶跃迁"模式:解放双手的语音转结构化记录、突破菜单层级的智能检索、结合销售方法论的场景赋能,深度重构CRM系统。产品依托统一数据平台,实现多模态信息整合与权限管控,采用混合模型架构平衡响应速度与决策质量。目前已在米其林等企业应用中显著提升销售转化率,并通过"用户+流量"混合收费模式验证商业化路径。这标志着ToB领域AI正从效率工具向"数字同事"进化,其核心价值在于理解业务、适配场景并创造增量。

  • AI日报:Kimi K2 高速版发布;美图WHEE上线视频超清功能;字节发布新模型Seed Diffusion Preview

    【AI日报】今日AI领域重要动态:1)美图WHEE推出"视频超清"功能,通过AI技术提升视频画质;2)Kimi K2高速版发布,输出速度提升至每秒40 Tokens;3)通义千问开源编程模型Qwen3-Coder-Flash,支持大规模上下文理解;4)Anthropic企业AI市场份额升至32%,超越OpenAI;5)字节跳动发布实验性扩散语言模型Seed Diffusion;6)马斯克将为Grok用户推出视频生成器Imagine和AI虚拟男友;7)Quora的Poe平台推出开发者API;8)Black Forest Labs开源图像生成模型FLUX.1-Krea;9)Augment推出CLI工具Auggie优化开发流程;10)清华开源AI语音模型MOSS-TTSD;11)Claude升级支持多格式文件上传。

  • 从数字枷锁到智能伙伴:AI Agent正在系统性重构CRM价值逻辑

    微软CEO纳德拉提出AI Agent将彻底改变SaaS行业,以Copilot Workspace为代表的新型交互方式正在重塑CRM领域。Salesforce和销售易等企业已推出AI Agent产品,通过自然语言交互优化销售流程,解决传统CRM数据录入繁琐、决策滞后等痛点。AI Agent能自动分析客户数据、生成拜访计划、实时转录会议内容,并精准识别增量客户,将销售效率提升10倍以上。腾讯投资的销售易NeoAgent平台已上线渠道助理、营销Agent等产品,通过大模型与业务系统深度整合,实现从"流程固化"到"智能协同"的转变。这场变革标志着SaaS 2.0时代的到来——软件不再是工具,而是能理解意图、主动规划的数字员工。未来商业竞争的核心,将转向数据资产厚度与场景落地的精准度。

  • AI CRM如何跨越落地鸿沟?场景驱动与数据闭环成关键

    销售易发布中国首款AI CRM产品NeoAgent,标志着CRM行业进入智能化变革。该产品基于腾讯混元大模型+DeepSeek开源模型,提供多场景智能解决方案。AI CRM的核心价值在于数据驱动,通过构建统一客户数据平台,实现销售全流程智能化。目前已在客户服务、销售助理等场景落地,其中销售助理Agent可提升70%事务性工作效率。企业应用AI需关注数据基础与场景适配性,销售易通过"场景需求-产品供给-使用反馈-快速迭代"的闭环模式,推动AI CRM持续进化。在Agentic AI时代,数据能力成为企业智能化转型的关键竞争力。

  • 理想i8宣布统一版本:标配即顶配 并降价1万元

    理想汽车宣布对其首款纯电SUV车系i8进行重大策略调整。理想汽车方面透露,自i8上市以来,该车型迅速吸引了市场的广泛关注,其中超过98%的用户倾向于选择理想i8Max和Ultra两款高配车型,这一选择比例远超公司预期。 为回应市场关切,理想汽车决定对i8车系进行配置优化。公司宣布,将统一配置版本,以理想i8Max作为全系标准配置,并将售价从原先的34.98万元下调至33.98万元�

今日大家都在搜的词:

热文

  • 3 天
  • 7天