Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Iterate over an object in Google Apps script

I thought my question would be answered with this or this but neither is what I'm looking for.

I have an object in Google Script, and want to iterate over each element:

var dict = {
    "foo": "a",
    "bar": "b"
};

for each key, element in dict{
    print the key and the element
}

Is this possible?

like image 707
LondonRob Avatar asked Sep 08 '14 10:09

LondonRob


2 Answers

I usually do something like that :

var dict = {
    "foo": "a",
    "bar": "b"
};

function showProperties(){
  var keys = [];
  for(var k in dict) keys.push(k+':'+dict[k]);
  Logger.log("total " + keys.length + "\n" + keys.join('\n'));
}

result in Logger :

enter image description here

You get the logger in the script editor/view/Logs

like image 96
Serge insas Avatar answered Sep 19 '22 16:09

Serge insas


With V8 runtime:

var dict = {
  "foo": "a",
  "bar": "b"
};

for (const [key, value] of Object.entries(dict)) {
  Logger.log(`${key}: ${value}`);
}
like image 24
Ivan Avatar answered Sep 22 '22 16:09

Ivan