gpt4 book ai didi

javascript - Google Apps 脚本属性服务 Obj 文字中的意外标记

转载 作者:行者123 更新时间:2023-11-29 20:57:15 25 4
gpt4 key购买 nike

我正在使用 Google Apps PropertyService 来存储一些设置变量。当我使用 setProperties() 函数并给它一个对象(就像他们在 documentation 中所做的那样)然后尝试获取一个属性并解析它时,我得到一个 SyntaxError: Unexpected Token in Object Literal.

在我运行这段代码之前,PropertiesService 被清空。据我所知,我得到了一个字符串,我应该能够将其解析为一个对象。

function setDefaults(){
var def = {
config: {
isSetup: false
},
test: {
page: true
}
}

var docServ = PropertiesService.getDocumentProperties();
docServ.setProperties(def, true);

log(typeof docServ.getProperty("config")); //string
log(docServ.getProperty("config")); //{isSetup=false}
log(JSON.parse(docSer.getProperty("config"))); //SyntaxError
}

最佳答案

这个问题似乎与多个嵌套对象有关。显然,JSON 解析器只能向下一级。

在每个嵌套对象上调用 JSON.stringify() 为我解决了这个问题:

 var def = {config: {isSetup: false}, test: {page: true}};

for (var prop in def) {

def[prop] = JSON.stringify(def[prop]);

}

var docServ = PropertiesService.getDocumentProperties();
docServ.setProperties(def, true);

var config = JSON.parse(docServ.getProperty("config"));

Logger.log(config.isSetup); //logs 'false'

关于javascript - Google Apps 脚本属性服务 Obj 文字中的意外标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48675245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com