【发布时间】:2018-06-28 22:02:12
【问题描述】:
我有一组来自 Google 电子表格的行,其中散布着 1 到 800 之间的数字:
var rowPositions = [1,3,4,5,9,10,11,12...795,799,800]
而且,为了提高效率,我需要对函数 deleteRows 进行 API 调用,该函数接受两个参数:
deleteRows(positionOfFirstRow, howManyRowsShouldBeDeletedStartingFromFirstRow)
Google Documentation for deleteRows.
如何在 Javascript 中创建一个对给定数组调用 deleteRows 次数最少的函数? IE,以上述数组为例,函数调用deleteRows删除位置1的行,然后再次调用删除3,4,5,再调用删除10,11,12等...?
换句话说,如何将 rowPositions 数组转换为二维数组,例如:
var 2DrowPositions = [[1,1],[3,2],[5,1],[9,4]]
然后我可以使用它为每个提供的坐标调用一次 deleteRows 函数。
【问题讨论】:
-
是的,我相信是的。 @大卫托马斯
-
请记住,我确实发布了无效的 JavaScript,它应该是:
[[1,1],[3,3]]。我的错。我建议仔细考虑您想要的最终结果,并在您的问题中发布所需的结果,以及您对如何使用您的解决方案的理解;这样人们就更有可能了解如何提供帮助。
标签: javascript arrays algorithm performance google-sheets