小编d4r*_*4rk的帖子

如何过滤数组数组?

我有这个 2D 数据数组(我们称之为变量arr),它代表一个包含各种字段的表:

     [1]   [2]   [3]   [4]   
[1],Fruit,Apple,Red,10  
[2],Fruit,Apple,Green,20  
[3],Berry,Strawberries,Red,5  
[4],Tuber,Potato,Yellow,2  
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我需要按第arr3 列 = Red过滤变量(我不想在所有表中搜索 Red,仅在第 3 列中)获得:

    [1]   [2]   [3]   [4]   
[1],Fruit,Apple,Red,10  
[2],Berry,Strawberries,Red,5 
Run Code Online (Sandbox Code Playgroud)

如何将 .filter 函数应用于二维数组以过滤单个字段/列?

arrays filter multidimensional-array google-apps-script

3
推荐指数
1
解决办法
8243
查看次数

使用Google App脚本按日期过滤数组

我有一个Google电子表格,它是2列表格,在A列上有日期(我确定是日期,并且所有date函数在所有列上都可以正常工作)和在B列文字上。

使用谷歌应用程序脚本,我得到了范围的所有值:

var sheet = SpreadsheetApp.openById(".........");
var ss = sheet.getSheetByName(".......");
var range =ss.getRange(1,1,ss.getLastRow(),ss.getLastColumn());
var data =  range.getValues();
Run Code Online (Sandbox Code Playgroud)

现在我应该有一个二维数组,日期为data [0],文本为data [1]

我可以使用以下方法过滤data [1]上的数组:

var filter = data.filter(function (dataRow) {
return dataRow[1] == 'sometext';
});
Run Code Online (Sandbox Code Playgroud)

我需要的是按某个日期值(例如年,月或周期)过滤data [0]

我试过了:

var filter = data.filter(function (dataRow) {
return dataRow[0].getFullYear == 2016;
});
Run Code Online (Sandbox Code Playgroud)

但是任何类型的日期函数都会给我一个错误,指出无法在对象中找到该函数(例如getFullYear())。

我究竟做错了什么?

感谢您的帮助

最好的祝福

javascript arrays google-apps-script

1
推荐指数
1
解决办法
7236
查看次数