我想看看我在浏览器中使用的ECMAscript版本(例如,chrome 59),因为在处理RegExp内容时,ECMAscript3和ECMAscript5之间有一些不同。
我已经找到了有关这个版本的相关信息,但是我找不到关于如何检测ECMAscript版本的具体答案。
谢谢是先进的。
发布于 2017-11-19 07:59:58
也许您可以尝试使用一些在ES6
中专门添加的数据结构,如Map
、Set
等。这是为了区分ES5
和ES6
,但您可以查找在ES5
中添加的特性,而在您的情况下,ES3
中没有添加这些特性?
try {
var k = new Map();
console.log("ES6 supported!!")
} catch(err) {
console.log("ES6 not supported :(")
}
try {
var k = new HashMap();
console.log("ES100 supported!!")
} catch(err) {
console.log("ES100 not supported :(")
}
发布于 2017-11-19 07:46:45
发布于 2017-11-19 08:24:57
ECMAScript是一个行业标准:
ECMAScript是由ECMA-262和ISO/IEC 16262中的ECMAScript标准化的一种有商标的脚本语言规范。它的创建是为了标准化JavaScript,以促进多个独立的实现。
Javascript是一种流行的实现,或多或少:
自标准首次发布以来,JavaScript一直是ECMAScript最著名的实现,其他著名的实现包括JScript和ActionScript。维基百科
考虑到JavaScript实现在各种浏览器、node.js等中的现状,没有人专门对自己进行版本化,而是不断地发展新特性。因此,最好的方法是检测,可能使用第三方库,如果功能需要存在,然后使用。否则就会回到更传统的模式。通常情况下,它是尝试一些操作,然后检查是否如预期,没有魔术。
https://stackoverflow.com/questions/47374678
复制相似问题