Javascript 从JS数组中删除非0 falsy值的最简单方法是什么?
我试图有一个功能,能够“拿起它离开了”在谷歌表 我需要找到特定列中包含数据的最后一行。 但是:Javascript 从JS数组中删除非0 falsy值的最简单方法是什么?,javascript,arrays,google-apps-script,google-sheets,Javascript,Arrays,Google Apps Script,Google Sheets,我试图有一个功能,能够“拿起它离开了”在谷歌表 我需要找到特定列中包含数据的最后一行。 但是: 该工作表有许多其他列,其中包含更多行,因此我无法使用 获取工作表上的最后一行 我正在尝试确定到目标的范围,因此getLastRow现在将 也可以在范围级别工作,因为我还没有范围 我无法使用array.filter(字符串),因为我正在处理数值 我无法通过过滤去除falsy元素(通常用于过滤空白 数组值) 例如: var ss = SpreadsheetApp.getActiveSpreadshee
- 该工作表有许多其他列,其中包含更多行,因此我无法使用 获取工作表上的最后一行
- 我正在尝试确定到目标的范围,因此getLastRow现在将 也可以在范围级别工作,因为我还没有范围
- 我无法使用array.filter(字符串),因为我正在处理数值
- 我无法通过过滤去除falsy元素(通常用于过滤空白 数组值)
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");
var range = sheet.getRange(B1:B);
var values = range.getValues(); //Pseudo Array values = [0,0,1,"",""]
var quantityOfValues= values.filter(?????).length //Goal: quantityOfValues== 3
var dataRange = sheet.getRange(1,2,quantityOfValues,1).... // do stuff to this range
删除所有错误值的最简单方法是EXCEPT zero,您可以检查truthy值或零
result = array.filter(v => v || v === 0);
删除所有错误值的最简单方法是EXCEPT zero,您可以检查truthy值或零
result = array.filter(v => v || v === 0);
查找柱高度
我就是这么做的:
function getColumnHeight(col,sh,ss){
var ss=ss || SpreadsheetApp.getActive();
var sh=sh || ss.getActiveSheet();
var col=col || sh.getActiveCell().getColumn();
var rg=sh.getRange(1,col,sh.getLastRow(),1);//This is just a reasonable starting point.
var vA=rg.getValues();
while(vA[vA.length-1][0].length==0){
vA.splice(vA.length-1,1);
}
return vA.length;
}
查找柱高度
我就是这么做的:
function getColumnHeight(col,sh,ss){
var ss=ss || SpreadsheetApp.getActive();
var sh=sh || ss.getActiveSheet();
var col=col || sh.getActiveCell().getColumn();
var rg=sh.getRange(1,col,sh.getLastRow(),1);//This is just a reasonable starting point.
var vA=rg.getValues();
while(vA[vA.length-1][0].length==0){
vA.splice(vA.length-1,1);
}
return vA.length;
}
如果中间有空白细胞怎么办?像<代码> [01,1,2,],“,”,1,“”,“”/> >如果中间有空白细胞……例如
[0,1,2,”,“,”,1,“,”]