检测 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

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-24 01:52:53  来源:igfitidea点击:

Detect version of JavaScript

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 languagetag.

注意:我想避免使用已弃用的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>

Related jsfiddle.net

相关 jsfiddle.net