在Google脚本中获取数组中的元素

时间:2018-03-04 18:06:07

标签: javascript arrays google-apps-script

我在这里的代码示例中遇到了很多麻烦...我确定这是一个初学者问题,但我不知道出了什么问题......

我想用我从一个范围得到的数组中的值做一些计算,但是我无法得到数组的元素,只有完整的数组......

var myarray = sh.getRange("A3:L3").getValues();

for (var i = 0; i < my myarray.length; i++){
  var test = myarray[0];
  myarray[i] = myarray[i] + 10;
}

首先,是否可以在for循环中执行第二行(myarray [i] = myarray [i] + 10)?我想用这个值加10替换值。

我试过,它对我不起作用,然后给我回复NaN。

所以我做了var&#34;测试&#34;它返回完整数组,而不仅仅是数组的第一个值......

我被困住了,我不知道这里有什么问题......

感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

您正在阅读的范围只有一行,但它仍然会返回一个2D数组,即一个数组数组。 myarray[0]是第一个(也是唯一一个)数组,你应该迭代这个数组。

您应该像这样重写代码:

for (var i = 0; i < myarray[0].length; i++){
  myarray[0][i] = myarray[0][i] + 10;
}

答案 1 :(得分:2)

for (var i = 0; i < my myarray.length; i++){出错。它很可能不是my myarray.length而是myarray.length

另一方面,sh.getRange("A3:L3").getValues()返回一个二维数组子而不是myarray[i] = myarray[i] + 10,你应该使用像myarray[i][j] = myarray[i][j] + 10这样的东西