8

I am trying to store objects in google apps script properties.

Lets say I have an object: var myObject = {var1:"stuffval", var2:"stuff2val"};

If I store this as a property via scriptProperties.setProperty("myProperty", myObject ); the property is stored as a string that is {var1=stuffval, var2=stuff2val}.

How can I retrieve my object from that string within Google Apps Script?

1 Answer 1

16

Convert the object to a string before putting it into Properties Service. All of the Properties Services store the data as a string. Properties Service will automatically convert non-strings to strings before storing the data, but with an object you should use the JSON service to correctly convert the object to a string. Then convert the object as a string back to a real object with JSON.parse(theObject)

var myObject = {var1:"stuffval", var2:"stuff2val"};//Example - object literal

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

Convert back to an object:

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

Don't use scriptProperties it's deprecated.

Sign up to request clarification or add additional context in comments.

1 Comment

Thanks! I'll give that a shot. For clarification, I am not using the depreciated ScriptProperties class. I am using the PropertiesService class which exposes a getScriptProperties() method. developers.google.com/apps-script/reference/properties/…

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.