检测JavaScript的版本

时间:2011-09-07 21:28:16

标签: javascript

如何检测浏览器支持的JavaScript版本(如果有)?我想检查ECMAScript 3与ECMAScript 5对比ECMAScript 6。

注意:我想避免使用已弃用的language代码。

4 个答案:

答案 0 :(得分:20)

以下是一个很好的参考资料:http://www.docsteve.com/DocSteve/Samples/JS/js_version.html

基本上,使用脚本标记的弃用语言属性

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

答案 1 :(得分:15)

解决方案提议http://www.docsteve.com/DocSteve/Samples/JS/js_version.html作为简单的JavaScript函数(使用&#34; createElement&#34;构造):

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

答案 2 :(得分:12)

我认为这取决于你想要对信息做什么,但很多人更喜欢进行特征检测,而不是弄清楚某人使用的浏览器或JS的版本。

查看Modernizr,这是一个很棒的库,可以为您进行功能检测。

答案 3 :(得分:8)

这会弹出一个警告框,其中包含浏览器使用的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