我在这里的代码示例中遇到了很多麻烦......我确定这是一个初学者问题,但我不知道出了什么问题......
我想用我从一个范围得到的数组中的值做一些计算,但我不能得到数组的元素,只有完整的数组......
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“test”,它返回了完整数组,而不仅仅是数组的第一个值......
我被卡住了,我不知道这里有什么问题......
谢谢您的帮助!
您正在读取的范围只有一行,但它仍然返回一个2D数组,即一个数组数组。 myarray[0]
是第一个(也是在这种情况下)数组,你应该迭代这个。
您应该像这样重写您的代码:
for (var i = 0; i < myarray[0].length; i++){
myarray[0][i] = myarray[0][i] + 10;
}
for (var i = 0; i < my myarray.length; i++){
上有错误。它很可能不是my myarray.length
它应该是myarray.length
。
另一方面,sh.getRange("A3:L3").getValues()
返回一个2D数组子而不是myarray[i] = myarray[i] + 10
你应该使用像myarray[i][j] = myarray[i][j] + 10
这样的东西