我想从 Google 电子表格中获取一个范围,创建一个 JavaScript 数组,然后将每个项目(形成范围)传递到数组中。
范围(A5:A10)中的值例如是比特币现金、莱特币、以太坊、门罗币、达世币、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
返回按行索引的范围,然后按列索引。您的范围 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)
}
关于javascript - 如何从 google 工作表中的范围创建 JavaScript 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48193771/