如何根据自定义排序函数对 gsheet table 进行排序?

How to sort gsheet table according to a custom sort function?

我有一个包含列的 gsheet tableversion, valueA

我写了一个比较两个版本的应用脚本函数。

如何使用这个自定义合作者根据这个合作者对整个 table 进行排序?

function sortAnalyticsVersionsDesc() {
  var versions = activeSpreadsheet.getRangeByName(MY_RANGE).getValues().filter(item => item[0] != "");
  versions.sort(_compareVer);
}

我希望对 valueA 进行相应排序。

sortSpecObj The columns to sort by 没有提供自定义排序功能的选项。

我是否必须将整个 table 复制到内存中?但即便如此 - 如何对矩阵进行排序?

function sortAnalyticsVersionsDesc() {
  var lines = activeSpreadsheet.getRangeByName(ANALYTICS_DATA_TABLE).getValues().filter(item => item[0] != "");
  lines = lines.sort(_compareLinesWithVer);
  activeSpreadsheet.getRangeByName(ANALYTICS_DATA_TABLE).setValues(lines)
}

function _compareLinesWithVer(a, b) {
return _compareVer(a[2], b[2]);
}

function _compareVer(a, b) {