相等时合并数组的连续项

时间:2019-10-07 09:29:30

标签: javascript arrays ecmascript-6

尝试从合并所有连续项的现有阵列中创建一个阵列:

function lookupUpdate() {

  // Test variables
  var HashID = "B2";
  var EditorName = "Jane";  

  var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var values = ss.getDataRange().getValues();
  for (var i = 0; i < values.length; i++) {
    if (values[i][0] == HashID) {
      // hard coding the value 2 as the 'EditorName' corresponds to Column B
      ss.getRange(i + 1, 2).setValue(EditorName);
      // trying to find a way to not hard code this value (2)
      break;
    }
  }
}

我尝试过[undefined, undefined, undefined] -> [undefined] [undefined, 'item', undefined] -> [undefined, 'item', undefined] [undefined, undefined, 'item'] -> [undefined, 'item'] ,其中temp是上述条件之一,但不保留索引。

编辑:如果我知道适用时要合并成一个项目的数量,那将是有益的

请注意第二种情况,尽管有重复的项,但数组保持不变

1 个答案:

答案 0 :(得分:2)

  array.filter((el, i, a) => !i || el !== a[i - 1])