如何从Google Apps脚本项目属性中存储和检索对象?

时间:2015-12-16 00:37:00

标签: javascript google-apps-script

我正在尝试将对象存储在Google Apps脚本属性中。

假设我有一个对象:var myObject = {var1:"stuffval", var2:"stuff2val"};

如果我通过scriptProperties.setProperty("myProperty", myObject );将其存储为属性,则该属性将存储为{var1=stuffval, var2=stuff2val}的字符串。

如何在Google Apps脚本中从该字符串中检索我的对象?

1 个答案:

答案 0 :(得分:9)

在将对象放入Properties Service之前将其转换为字符串。所有Properties Services都将数据存储为字符串。属性服务将在存储数据之前自动将非字符串转换为字符串,但对于对象,您应使用JSON服务将对象正确转换为字符串。然后将对象作为字符串转换回具有JSON.parse(theObject)

的真实对象
var myObject = {var1:"stuffval", var2:"stuff2val"};//Example - object literal

PropertiesService.getScriptProperties()
  .setProperty("myProperty", JSON.stringify(myObject) );//stringify the object

转换回对象:

var returnedObj = PropertiesService.getScriptProperties("myProperty");
returnedObj = JSON.parse(returnedObj);

请勿使用scriptProperties弃用。