gpt4 book ai didi

javascript - 删除 Google App 脚本中数组中的特定空项

转载 作者:行者123 更新时间:2023-12-02 22:21:20 27 4
gpt4 key购买 nike

我创建了一个自定义函数,用于将 Google 表格中不同工作表的数据编译到一个数组中。

事情是这样的:

function COMPILER(){
var i;
var c;
var display = [];
var resultado = [];
for (i = 0; i < arguments.length; i++) {
display.push(arguments[i]);
};
for (c = 0; c < display.length; c++) {
resultado = resultado.concat(display[c]);
};
return resultado;
};

代码运行得很好,但我遇到了一个意想不到的问题。由于数据源之间存在隐藏公式,因此我的最终数组是用几个空值编译的。最终的矩阵看起来有点像这样:

resultado [[3, f, 2, 6, 0, r], [2, 2, t, 5, 6, 8], **[, , , , , ]**, **[, , , , , ]**, **[, , , , , ]**, [4, y, y, 7, 8, 0], **[, , , , , ]**...]

我不知道如何正确(并有选择地)从矩阵中删除这些空值。我假设我必须读取和测试整个矩阵并删除每个选定的值,循环内的所有内容,但我无法自己完成。

最佳答案

这段代码将帮助您解决问题,它获取主数组中的每个数组,然后检查是否存在空值以将它们存放起来并构建一个新的干净数组。

function testArray(){
var arrTest = [[3, 'f', 2, 6, 0, 'r'], [2, 2, 't', 5, 6, 8],[, , , , , ],[, , , , , ], [, , , , , ], [4, 'y', 'y', 7, 8, 0], [, , , , , ]];
// Initiate an empty array to fill it with the non empty data from your Array
var cleanArr = [];
// Check every array inside your main array
arrTest.forEach(function(el){
// If there are null values, this will clean them
var filteredArr = el.filter(function(e){ return e != null;});
// If the array ends up empty, don't push it into your clean array
if(filteredArr.length) cleanArr.push(filteredArr);
});
Logger.log(cleanArr);
}

文档

由于您正在使用数组处理大量操作,我建议您检查一下:

关于javascript - 删除 Google App 脚本中数组中的特定空项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59220416/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com