我正在使用 Google 表格和 Google Apps 脚本。我曾经.getRange().getValues从工作表中抓取用户电子邮件。
收到的数组示例:
[[user1, , ], [user2, user3, ], [user4, user5, user6]]
如您所见,每行(内部数组)最多有三个用户。但是,其中一些单元格为空,导致数组中出现空值。然后,我将每个内部数组输入其中,.addEditors()由于空用户,该数组会引发错误。
我知道我可以遍历每个数组并删除空数组,然后将新数组推入其中.addEditors(),但这会很丑陋,而且效率很低。我没有足够的经验,不知道如何开发更优雅的方式。
有人可以帮助我了解如何以及为什么以尽可能有效的方式解决这个问题吗?谢谢。
注意:虽然看起来该.filter(Boolean)解决方案可能有效,但我只能让它适用于单个数组,而不适用于数组中的数组。
var myFilterArray = myArray.filter(Boolean);
arr.forEach(function(x){
return x.filter(Boolean);
});
Run Code Online (Sandbox Code Playgroud)
如果深度大于一,我无法让它返回修改后的数组。
javascript arrays multidimensional-array google-sheets google-apps-script