如何检测浏览器支持的JavaScript版本(如果有)?我想检查一下ECMAScript 3、ECMAScript 5和ECMAScript 6。
注意:我希望避免使用过时的language
标记。
发布于 2011-09-08 05:45:26
我想这取决于你想要对信息做什么,但许多人更喜欢做特征检测,而不是找出某人正在使用什么浏览器或JS的哪个版本。
查看Modernizr,它是一个很棒的库,可以为您进行特征检测。
发布于 2011-09-08 05:29:53
这里有一个很好的参考资料:http://www.docsteve.com/DocSteve/Samples/JS/js_version.html
基本上,使用script标记的弃用语言属性
<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>
发布于 2014-11-08 03:57:18
向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>
https://stackoverflow.com/questions/7340726
复制相似问题