识别浏览器的JavaScript引擎的方法

答案来自StackOverflow,打开这个网页http://jsbin.com/opuvas即可,这个网页也是答题者自己写的。

二维码是这个网址。网页内有统计访问量,作者想知道对多少人有用,建议尊重原创,不要复制这个网页。

对PC浏览器和移动浏览器都可用。

其原理是这段js:

 1 window.onload = function() {
 2     var v8string = ‘function%20javaEnabled%28%29%20%7B%20%5Bnative%20code%5D%20%7D‘;
 3
 4     if (window.devicePixelRatio) //If WebKit browser
 5     {
 6         if (escape(navigator.javaEnabled.toString()) === v8string) {
 7             display(‘V8 detected‘);
 8         } else {
 9             display(‘JSC detected‘);
10         }
11     } else {
12         display("Not a WebKit browser");
13     }
14
15     function display(msg) {
16         var p = document.createElement(‘p‘);
17         p.innerHTML = msg;
18         document.body.appendChild(p);
19     }
20
21 };

首先检测WebKit特有的属性devicePixelRatio,然后检测v8特有的javaEnabled函数的实现。

转自:http://blog.csdn.net/hursing/article/details/12868955

时间: 2024-10-17 20:48:47

识别浏览器的JavaScript引擎的方法的相关文章

关于浏览器内核与javascript引擎的一些小知识

浏览器是我们每天几乎都必须使用的软件产品,可是对于自己每天都接触的浏览器,很多同学其实对其一无所知.今天异次元就跟大家说说关于浏览器内核的一些事儿吧,好让你了解多一点稍微内在的东西. 在下面的文章中主要介绍一些常见的浏览器内核和JavaScript引擎,部分内容来自于我在网上找到的资料,还有一些是我自己的理解,不保证完全正确,但是大致应该是没错的.如果有误,请指正…… [本文原作者为武汉小狮子,xxy171070为推荐者,特此声明] 一.浏览器内核 (排版引擎/渲染引擎) 首先解释一下浏览器内核

V8 JavaScript引擎研究(三)垃圾回收器的实现

V8垃圾回收机制简介 V8垃圾回收器的实现,是V8高效的一个非常重要的原因. V8在运行时自动回收不再需要使用的对象内存,也即是垃圾回收. V8使用了全暂停式(stop-the-world).分代式(generational).精确(accurate)等组合的垃圾回收机制,来确保更快的对象内存分配.更短的垃圾回收时触发的暂停以及没有内存碎片. V8的垃圾回收有如下几个特点: 当处理一个垃圾回收周期时,暂停所有程序的执行. 在大多数垃圾回收周期,每次仅处理部分堆中的对象,使暂停程序所带来的影响降至

JavaScript 引擎「V8」发布 8.0 版本,内存占用量大幅下降

上周,JavaScript 引擎「V8」的开发团队在该项目官方网站上正式宣布推出最新的 8.0 版本.这次更新的重点主要集中在错误修复及性能改善上,正式的版本将在数周后随着谷歌 Chrome 80 稳定版一起发布. V8 是谷歌公司推出的开源高性能 JavaScript 引擎,主要用于提升 Web 浏览器内部 JavaScript 脚本执行的性能.V8 通过 C++ 语言编写,主要用在 Chrome 浏览器以及 Node.js 上,实现了对 ECMAScript 与 WebAssembly 的支

浏览器兼容问题与解决方法

浏览器兼容问题是指,不同厂商开发的浏览器针对同一段代码的不同解析,造成页面展示效果出现差异的情况,很多时候为了追求显示效果的一直,前端开发人员就要针对不同兼容问题应用相应的方法处理,达到效果一致的目的. 下面这些是平时开发过程中遇到的,做个汇总,方便查阅. 1.<!DOCTYPE HTML>文档类型的声明 产生条件:IE6浏览器,当我们没有书写这个文档声明的时候,会触发IE6浏览器的怪异解析现象: 解决办法:书写文档声明. 2.横向双外边距 产生条件:在IE6中块元素浮动后(左浮左margin

浏览器同源政策及其规避方法

浏览器安全的基石是"同源政策"(same-origin policy).很多开发者都知道这一点,但了解得不全面. 本文详细介绍"同源政策"的各个方面,以及如何规避它. 一.概述 1.1 含义 1995年,同源政策由 Netscape 公司引入浏览器.目前,所有浏览器都实行这个政策. 最初,它的含义是指,A网页设置的 Cookie,B网页不能打开,除非这两个网页"同源".所谓"同源"指的是"三个相同". 协议

企业内网IE浏览器兼容性支持和加速方法

修改IE浏览器配置加速IE浏览器: 取消"对证书地址不匹配发出警告"勾选取消"检查服务器证书是否已吊销*"勾选取消"检查提交的POST重定向到不允许发送到的区域时发出警告"勾选取消"在安全和非安全模式之间切换时发出警告"勾选取消"检查发行商的证书是否吊销"勾选取消“允许运行和安装程序,即使签名无效”勾选取消"检查下载的程序的签名"勾选取消"启动弹出窗口阻止程序"勾选关

构建自动化、跨浏览器的 JavaScript 单元测试

我们都知道在多个浏览器中测试我们的代码是多么的重要.至少在我们发布第一个项目的时候,我认为我们在网络开发社区做大部分工作还是相当不错的. 我们做的不够好的工作是测试代码时每一次做出的改变. 我个人对此感到很惭愧.我已经把"学习如何构建自动化.跨浏览器的JavaScript的单元测试"列在我的年度to-do清单中,但我每一次坐下来真正想要做的时候,我又退却了.虽然我肯定这一部分原因是因为我的懒惰,同时我认为这也是由于缺乏良好的可用信息在这个主题上. 有许多工具和框架(例如 Karma)宣

javascript引擎在c,c+中调用

JavaScript是一种广泛用于Web客户端开发的脚本语言,常用来控制浏览器的DOM树,给HTML网页添加动态功能.目前JavaScript遵循的web标准的是ECMAScript262.由于JavaScript提供了丰富的内置函数.良好的对象机制.所以JavaScript还可以嵌入到某一种宿主语言中,弥补宿主语言的表现力,从而实现快速.灵活.可定制的开发. 软件程序应用javascript 现有的主流浏览器基本上都实现了一个自己的JavaScript引擎.这些JavaScript引擎可以分析

V8 javascript引擎初步体验

v8 引擎,不必多说,大名鼎鼎,迄今最快的js引擎. 这么好的东西,如果尽在浏览器中使用,太浪费了,也希望用到其他地方,比如一些客户端开发中. 闲言少讲,这就开始 下载源码 去官方网站:https://code.google.com/p/v8/ 我喜欢用git,所以从这里下载 git clone git://github.com/v8/v8.git v8 && cd v8 编译 我为android平台编译的,折腾了好久,记录一些重点.你首先要看这个:http://code.google.c