【发布时间】:2021-12-15 12:05:38
【问题描述】:
我正在尝试确定数组的长度,以便我可以使用该长度来确定 for 循环需要迭代多少次。
我正在尝试从多列的 1 行中读取,以确定需要写入哪些单元格。代码会将数据写入行,但需要确定标头是否已写入,或者标头是否还需要写入。在这个函数中,我专注于检查标题以查看值是否已经写入。
我知道范围值 D2:Z2 效率低下,我愿意接受另一种解决方法。 我很想知道是否有人能够确定为什么长度是 1.0 而不是 4,如果其他人能想出一种比较值的方法,然后确定写入新标题集的列。
代码
function getCurrentHeader() {
//gets active spreadsheet, saves to array
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Records");
var rangeValues = Array;
//D2:Z2 is the current largest range available 15/12/21
rangeValues = sheet.getRange("D2:Z2").getValues();
return rangeValues;
}
function checkCurrentHeaders(){
//gets the array of headers
var current = getCurrentHeader();
//Logger.log(current);
var leng = current.length;
Logger.log(leng);
}
以上是我到目前为止所写的内容,但即使记录了数组以查看值,.length 返回值 1,数组中有 4 个值,所以我期待 4 作为返回。我还注意到输出在两组方括号中。请参阅下面的日志信息。
记录器
11:52:32 AM Notice Execution started
11:52:32 AM Info [[B, A, C, DF, , , , , , , , , , , , , , , , , , , ]]
11:52:32 AM Info 1.0
11:52:32 AM Notice Execution completed
【问题讨论】:
标签: javascript arrays google-sheets