检测 JavaScript 版本
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/7340726/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Detect version of JavaScript
提问by Randomblue
How can I detect what version of JavaScript the browser supports (if any)? I want to check for ECMAScript 3 versus ECMAScript 5 versus ECMAScript 6.
如何检测浏览器支持的 JavaScript 版本(如果有)?我想检查 ECMAScript 3 与 ECMAScript 5 与 ECMAScript 6。
Note: I want to avoid the deprecated language
tag.
注意:我想避免使用已弃用的language
标签。
采纳答案by Matt
I suppose it depends on what you want to do with the information, but many people prefer to do feature detection, instead of figuring out what browser someone is using or what version of JS.
我想这取决于你想用这些信息做什么,但很多人更喜欢做特征检测,而不是弄清楚某人正在使用什么浏览器或什么版本的 JS。
Check out Modernizr, which is a great library that does feature detection for you.
查看Modernizr,这是一个很棒的库,可以为您进行特征检测。
回答by Naftali aka Neal
Here is a good reference for you: http://www.docsteve.com/DocSteve/Samples/JS/js_version.html
这是一个很好的参考:http: //www.docsteve.com/DocSteve/Samples/JS/js_version.html
Basically, use the deprecated language attribute of the script tag
基本上,使用脚本标记的已弃用语言属性
<script language="javascript">var js_version="1.0"</script>
<script language="javascript1.1">var js_version="1.1"</script>
<script language="javascript1.2">var js_version="1.2"</script>
<script language="javascript1.3">var js_version="1.3"</script>
<script language="javascript1.4">var js_version="1.4"</script>
<script language="javascript1.5">var js_version="1.5"</script>
<script language="javascript1.6">var js_version="1.6"</script>
回答by DmitryS
The solution proposed to http://www.docsteve.com/DocSteve/Samples/JS/js_version.htmlas simple JavaScript function (using "createElement" construction):
向http://www.docsteve.com/DocSteve/Samples/JS/js_version.html提出的解决方案作为简单的 JavaScript 函数(使用“createElement”构造):
<script type="text/javascript">
function get_js_version ()
{
this.jsv = {
versions: [
"1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "2.0"
],
version: ""
};
var d = document;
for (i = 0; i < jsv.versions.length; i++) {
var g = d.createElement('script'),
s = d.getElementsByTagName('script')[0];
g.setAttribute("language", "JavaScript" + jsv.versions[i]);
g.text = "this.jsv.version='" + jsv.versions[i] + "';";
s.parentNode.insertBefore(g, s);
}
return jsv.version;
}
document.write('JavaScript Version: ' + get_js_version());
</script>
回答by Vickar
This pops out an alert box with the javascript version being used by your browser:
这会弹出一个警告框,其中包含浏览器正在使用的 javascript 版本:
<script type="text/javascript">
var jsver = 1.0;
</script>
<script language="Javascript1.1">
jsver = 1.1;
</script>
<script language="Javascript1.2">
jsver = 1.2;
</script>
<script language="Javascript1.3">
jsver = 1.3;
</script>
<script language="Javascript1.4">
jsver = 1.4;
</script>
<script language="Javascript1.5">
jsver = 1.5;
</script>
<script language="Javascript1.6">
jsver = 1.6;
</script>
<script language="Javascript1.7">
jsver = 1.7;
</script>
<script language="Javascript1.8">
jsver = 1.8;
</script>
<script language="Javascript1.9">
jsver = 1.9;
</script>
<script type="text/javascript">
alert(jsver);
</script>