【发布时间】:2019-07-14 13:10:37
【问题描述】:
我想按行索引从数组中删除行
我有
function test() {
arr1 = [[Id, From, To], [1.0, AA1, BB1], [2.0, AA2, BB2], [3.0, AA3, BB3], [4.0, AA4, BB4], [5.0, AA5, BB5], [6.0, AA6, BB6]]
arr1.splice(1,1);
return arr1
}
我明白了
[[Id, From, To], [2.0, AA2, BB2], [3.0, AA3, BB3], [4.0, AA4, BB4], [5.0, AA5, BB5], [6.0, AA6, BB6]]
这就是我想要的
但如果我有的话
function test() {
var sht = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
arr1 = [[Id, From, To], [1.0, AA1, BB1], [2.0, AA2, BB2], [3.0, AA3, BB3], [4.0, AA4, BB4], [5.0, AA5, BB5], [6.0, AA6, BB6]]
var result = arr1.splice(1,1);
sht.getRange(1,1,result.length,result[0].length).setValues(result)
}
我明白了
result = [[1.0, AA1, BB1]]
我不明白发生了什么,我怎么得到
result = [[Id, From, To], [2.0, AA2, BB2], [3.0, AA3, BB3], [4.0, AA4, BB4], [5.0, AA5, BB5], [6.0, AA6, BB6]]
【问题讨论】:
-
为什么不简单地使用方法
deleteRow方法? -
返回 arr1 而不是结果数组
-
@CodeManiac 与 js 本身可以做的事情相比,它会很慢。
-
@op 引用您的字符串:
[["Id", "From","To"], [1.0,..或提供数字数组。否则,您的示例无法重现。
标签: javascript arrays google-apps-script google-sheets