ECMA-262的哪个版本支持谷歌应用程序脚本

Which Edition of ECMA-262 Does Google Apps Script Support?

本文关键字:谷歌 应用程序 脚本 支持 版本 ECMA-262      更新时间:2023-09-26

根据旧Google Group的这个线程,Apps Script基于ECMA-262第三版。

编辑器中的自动完成显示第三版数组函数这一事实似乎支持了这一点。

然而,以下代码运行得非常好,这让人对此事产生了怀疑:

var array = [
  1,2,3,4,5
];
Logger.log("forEach:");
array.forEach(function (item,idx,arr) {
  Logger.log(item); 
});

请注意使用ECMA-262第5版阵列功能进行Each。

有权威人士会介意对为什么会出现这种情况给出明确的答案吗?依赖所有第5版功能还是已经实现并似乎有效的子集是安全的?

文档称,旧的运行时基于Mozilla的Rhino JavaScript解释器,该解释器提供ECMAScript 5的一个子集,基于1.6,少量为1.7和1.8。

V8运行时支持新的Apps Script运行时,只有少数例外,如E6模块。

来自内置谷歌服务

Apps Script支持两个JavaScript运行时:现代V8运行时和由Mozilla的Rhino JavaScript解释器提供支持的旧运行时。

V8运行时支持现代ECMAScript语法和功能。Rhino运行时基于旧的JavaScript1.6标准,以及1.7和1.8中的一些功能。您可以自由选择与脚本一起使用的运行时,但强烈建议使用V8运行时。

相关文章: