Удаление строки если начало повторяется и вся строка

Мне необходимо в своем проекте, удалять строки, если у них начало повторяется. Пример:

1234.abc
1234.dfg

1234.dfg необходимо удалить, как это можно сделать? Я изначально сделал проверку на дубликат строки, но теперь надо чтобы по началу проверяло и так же полную строку Вот мой код на проверку целой строки на дубликат и её удаление

String.prototype.removeDuplicate = function() {
    const set = new Set(this.split('\n'))
    return [...set].join('\n')
}

Ответы (1 шт):

Автор решения: ipatev_nn

По мотивам ответа на SO: https://stackoverflow.com

function uniq(ar) {
  if (ar.length === 0) return ar;
  ar = ar.sort(function (a, b) { return a*1 - b*1; });
  var ret = [ar[0]];
  for (var i = 1; i < ar.length; i++) {
    if (ar[i-1].split(".")[0] !== ar[i].split(".")[0]) {
      ret.push(ar[i]);
    }
  }
  return ret;
}
console.log(uniq(['1234.abc','1234.dfg','egor.csv','egor.exe','egor.lsx','egor.xlsx']));
//["124", "237", "255", "366"]

Единственное что потребовалось, добавить split в обращении к массиву в операторе сравнения.

→ Ссылка