Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用分隔符拆分数组的和?_Javascript_Google Apps Script_Google Sheets - Fatal编程技术网

Javascript 如何使用分隔符拆分数组的和?

Javascript 如何使用分隔符拆分数组的和?,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我从GoogleSheet的一列中得到了一个数组,比如[[23.0]、[25.0]、[26.0]、[89.0]、[45.0]、[78.0]、[62.0]、[123.0]、[45.0]、[68.0] 如何使用空值将其拆分为(163/185/236)或更多的子数组,因为数组长度可能超过1000,包括20-50个空值? 我根据答案修改了脚本。但对我来说不起作用。我不明白为什么 函数getSums(){ var ss=SpreadsheetApp.getActiveSpreadsheet(); var

我从GoogleSheet的一列中得到了一个数组,比如
[[23.0]、[25.0]、[26.0]、[89.0]、[45.0]、[78.0]、[62.0]、[123.0]、[45.0]、[68.0]
如何使用空值将其拆分为(
163/185/236
)或更多的子数组,因为数组长度可能超过1000,包括20-50个空值? 我根据答案修改了脚本。但对我来说不起作用。我不明白为什么

函数getSums(){ var ss=SpreadsheetApp.getActiveSpreadsheet(); var sh=ss.getSheetByName('TemplateTest'); var r=sh.getRange(1,1,sh.getLastRow()); var arr=r.getValues();//日志:[[23.0],[25.0],[26.0],[89.0],[45.0],[78.0],[62.0],[123.0],[45.0],[68.0]] var总和=[]; var总和=0; //遍历数组 对于(变量i=0;ia+b); } } Logger.log(总和)//log:[16345786212345] }
var-arr=[[23.0]、[25.0]、[26.0]、[89.0]、[45.0]、[78.0]、[62.0]、[123.0]、[45.0]、[68.0];
var总和=[];
var总和=0;
//遍历数组
对于(变量i=0;ia+b);
}
}
var arr = [[23.0], [25.0], [26.0], [89.0], [], [45.0], [78.0], [62.0], [], [123.0], [45.0], [68.0]];
var sums = [];
var sum = 0;
// iterate through the array
for (var i = 0; i < arr.length; i ++) {
    if (arr[i].length == 0 || i == arr.length - 1) {
        // empty array, push sum to array and reset
        sums.push(sum);
        sum = 0;
    } else {
        // array has values, sum them up and add to sum
        sum += arr[i].reduce((a, b) => a + b);
    }
}