告诉您的浏览器的Javascript版本

时间:2010-07-13 22:38:38

标签: javascript browser

我有来自http://javascript.about.com/library/bljver.htm

的以下脚本
<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 type="text/javascript">
document.write('<p><b>Javascript version ' + jsver + ' supported<\/b><\/p>');
</script>

但是想知道是否有更短的路?

4 个答案:

答案 0 :(得分:5)

查看您对@meder所做的评论,我强烈建议您进行功能检测,例如检测indexOf方法是否可用数组对象:

if (typeof Array.prototype.indexOf == 'function') {
  //...
}

JavaScript(TM)版本号是指ECMAScript标准的 Mozilla实现

在早期,当language属性被广泛使用时,您可以指定"JavaScript1.2"来放置为ECMAScript 2编写的代码,但我现在不建议您采用这种方法

您可能想要指定 JavaScript(TM)版本的唯一原因是因为您确实需要使用特定于Mozilla的扩展程序for example let关键字,生成器,迭代器,表达式闭包等......

另见:

答案 1 :(得分:2)

在现实世界中,Javascript没有有意义的版本号,尤其是在IE中。

这实际上是不可能的。

答案 2 :(得分:2)

Javascript实际上没有不同的版本号,即使它确实存在,版本也不是特别有用。最好的方法是进行特征检测。有几个项目和库使用Array.indexOf,Object.keys,addEventListener等功能扩展本机类型。如http://devpro.it/JSL/https://code.google.com/p/ddr-ecma5/

答案 3 :(得分:0)

你不应该使用language属性,它是oldschool,并且在这个时代并没有真正相关。此外,没有标准用于中继Javascript跨浏览器的版本。更不用说不同的浏览器有不一致的Javascript版本。