You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Apps Script中使用变量作为哈希表键

问题解答:Google Apps Script中用变量作为对象键的语法问题

你遇到的错误确实是因为Google Apps Script的旧运行环境不支持ES6的计算属性名语法(也就是用[变量]直接作为对象字面量的键)。

为什么会报错?

早期的Google Apps Script基于ES5标准,而计算属性名是ES6才引入的新特性,所以旧环境会把[depEYFSEn]识别为无效的属性ID,抛出"Invalid property ID"错误。

两种解决方案:

方案1:ES5兼容写法(无需升级运行时)

先创建空对象,再通过方括号语法逐个赋值,这是ES5完全支持的写法:

var depEYFSEn = "EYFS English";
var depEYFSIt = "EYFS Italian";

// 先初始化空对象
var folderRoots = {};
// 用变量作为键赋值
folderRoots[depEYFSEn] = "sdfg0987897sdfga3";
folderRoots[depEYFSIt] = "sdf8f9g7897sfdfg7";

// 获取值的方式不变
var b = folderRoots[depEYFSEn]; // 正常返回"sdfg0987897sdfga3"

方案2:升级到V8运行时(支持ES6+特性)

现在Google Apps Script已经支持Chrome V8运行时,启用后就能直接使用你原本的ES6写法。启用步骤:

  • 打开脚本编辑器
  • 点击顶部菜单栏的「运行」→「启用新的Apps Script运行时」
  • 或者进入「项目设置」,勾选「启用Chrome V8运行时」

启用后,你原来的代码就能正常运行,还能使用箭头函数、let/const、解构赋值等更多ES6+特性,同时运行性能也会提升。

内容的提问来源于stack exchange,提问作者Riccardo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:19:43