获取存储在当前属性中的所有键的数组

时间:2018-01-28 10:44:46

标签: javascript google-apps-script

我正在浏览Google's App Script的Google文档,了解一些网络应用。基本上我试图将简单数据存储在作用于一个脚本的键值对中,而我确实设法存储和检索数据但是当我试图只获取键时,我得到了一个不在顺序即可。这是代码及其日志。

var scriptProperties = PropertiesService.getScriptProperties();
 scriptProperties.setProperties({
   'cow': 'moo',
   'sheep': 'baa',
   'chicken': 'cluck'
 });
 var keys = scriptProperties.getKeys();
 Logger.log('Animals known:');
 for (var i = 0; i < keys.length; i++) {
   Logger.log(keys[i]);
 }

日志:

 Animals known:
 chicken
 cow
 sheep

为什么哦?为什么?

1 个答案:

答案 0 :(得分:2)

我认为你的例子中的javascript objects预计会以这种方式行事,而不是订单承诺。像myArray = [1,2,3]这样的数组可以使用你的for循环方法。但是,不是您当前正在使用的对象。

致@bpierre的参考资料。

  

4.3.3对象对象是Object类型的成员。它是一个无序的属性集合,每个属性都包含一个原语   价值,对象或功能。存储在属性中的函数   对象称为方法。

     

Map以插入顺序迭代其元素,而没有为Objects指定迭代顺序。