@Mosapi

Как перебрать столбец таблицы и изменить каждое первое уникальное значение?

Есть таблица вида:

00001 | 08.02.2021 | 0 | 2 | кт 18
00002 | 08.02.2021 | 0 | 1 | кт 18
00003 | 08.02.2021 | 0 | 6 | сс 23
00004 | 08.02.2021 | 0 | 4 | сс 23
00005 | 08.02.2021 | 0 | 2 | бб 35
00006 | 08.02.2021 | 0 | 1 | бб 35
00007 | 08.02.2021 | 0 | 1 | бб 35
00008 | 08.02.2021 | 0 | 1 | нн 02

Необходимо перебрать значения из последнего столбца, так чтобы сначала подсчитать кол-во повторений значений, а затем каждое первое из уникальных сделать ссылкой вида <a href=''.>Уникальное значение столбца</a>.

arr = [];
data = document.querySelectorAll('tr > td:last-child');
for (var i =0, dln=data.length; i< dln; i++){
per = data[i];
arr.push(per.innerText);
}
var result = arr.reduce(function(acc, el){acc[el] = (acc[el] || 0) + 1;return acc;}, []);
var uniqArr = arr.filter((val, i, ar) => ar.indexOf(val) === i);
//console.log(result);//массив повторений 
//console.log(result['кт 18']);//кол-во повторений
//console.log(uniqArr); //Уникальные значения

У меня получается вычислить кол-во повторений и выбрать уникальные значения. Но я не понимаю, как дальше все это использовать, чтобы добиться решения поставленной задачи?
  • Вопрос задан
  • 78 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Array
  .from(document.querySelectorAll('tr > td:last-child'))
  .filter((n, i, a) => n.innerText !== a[i - 1]?.innerText)
  .forEach(n => n.innerHTML = `<a href="#">${n.innerText}</a>`);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы