如何从 google sheet 中的范围创建 javascript 数组?
How can I create a javascript array froma range in a google sheet?
我想从 Google 电子表格中获取一个范围,创建一个 javascript 数组,然后将形成范围的每个项目传递到数组中。
范围 (A5: A10) 中的值例如是比特币现金、莱特币、以太坊、门罗币、dash、quantstamp。
我的代码如下:
function appendCoins() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var r = sheet.getRange('A5:A10').getValues();
var coins = [];
for (var i=0;i < r.length-1;i++) {
coins.push(r[0][i]);
}
Logger.log(coins)
}
记录器向我展示了这个:
[18-01-10 18:09:07:218 GMT] [bitcoin-cash, null, null, null, null, null]
所以第一个是正确的,它循环了正确的次数,但所有其他值都是未定义的。
这是为什么?它应该是直截了当的。有人可以帮忙吗?谢谢你。
getValues
returns 按行索引的范围,然后是列。您的范围 A5:A10 有五行一列。您将其视为只有一行和五列。在您的代码中交换 0
和 i
:
function appendCoins() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var r = sheet.getRange('A5:A10').getValues();
var coins = [];
for (var i=0;i < r.length-1;i++) {
coins.push(r[i][0]);
}
Logger.log(coins)
}
我想从 Google 电子表格中获取一个范围,创建一个 javascript 数组,然后将形成范围的每个项目传递到数组中。
范围 (A5: A10) 中的值例如是比特币现金、莱特币、以太坊、门罗币、dash、quantstamp。
我的代码如下:
function appendCoins() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var r = sheet.getRange('A5:A10').getValues();
var coins = [];
for (var i=0;i < r.length-1;i++) {
coins.push(r[0][i]);
}
Logger.log(coins)
}
记录器向我展示了这个:
[18-01-10 18:09:07:218 GMT] [bitcoin-cash, null, null, null, null, null]
所以第一个是正确的,它循环了正确的次数,但所有其他值都是未定义的。
这是为什么?它应该是直截了当的。有人可以帮忙吗?谢谢你。
getValues
returns 按行索引的范围,然后是列。您的范围 A5:A10 有五行一列。您将其视为只有一行和五列。在您的代码中交换 0
和 i
:
function appendCoins() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var r = sheet.getRange('A5:A10').getValues();
var coins = [];
for (var i=0;i < r.length-1;i++) {
coins.push(r[i][0]);
}
Logger.log(coins)
}