Фильтр массива для отображения уникальных значений javascript
У меня есть массив, который выглядит следующим образом:
["A", "A", "A", "A", "B", "B", "B", "C", "C", "D", "A", "A", "B", "B", "B"]
Как я могу отфильтровать его, чтобы одновременно было только одно уникальное значение, например:
['A', 'B', 'C', 'D', 'A', 'B']
Что я уже пробовал:
Я попробовал два разных подхода, но сначала решил использовать цикл for
function uniqueInOrder(arg) { var arr = []; arg.split(''); for(var i = 0; i < arg.length; i++){ if(arg[i] === arg[i+1]) {arr.push(arg[i])} } return arr }
Но, насколько я понимаю, мне нужно было бы как-то отключить его от нажатия, если он уже нашел дубликат, потому что я получаю этот вывод:
["А", "В", "А", "Б", "В", "С", "А", "Б", "Б"]
Кроме того, я попробовал этот метод:
array.filter(function (value, index, self) { return self.indexOf(value) === index; })
Но это просто не позволяет дублировать