Как удалять теги из массива, которые уже не используются?

В JavaScript, удаление неиспользуемых тегов из массива можно осуществить с использованием нескольких подходов. Обычно, когда говорят о "неиспользуемых тегах", они имеют в виду теги, которые отсутствуют в коде HTML документа.

Вот несколько способов удалить неиспользуемые теги из массива:

1. Перебор массива и проверка наличия каждого тега в документе:

const tags = ['tag1', 'tag2', 'tag3'];
const usedTags = [];

for (let i = 0; i < tags.length; i++) {
   const tag = tags[i];
   const elem = document.querySelector(tag);
   if (elem) {
      usedTags.push(tag);
   } 
}

console.log(usedTags);

2. Использование метода filter() для удаления неиспользуемых тегов:

const tags = ['tag1', 'tag2', 'tag3'];
const usedTags = tags.filter(tag => document.querySelector(tag));

console.log(usedTags);

3. Использование метода includes() для проверки вхождения тега в коде HTML документа:

const tags = ['tag1', 'tag2', 'tag3'];
const usedTags = tags.filter(tag => document.documentElement.innerHTML.includes(`<${tag}`));

console.log(usedTags);

4. Использование метода reduce() для удаления неиспользуемых тегов:

const tags = ['tag1', 'tag2', 'tag3'];
const usedTags = tags.reduce((acc, tag) => {
   if (document.querySelector(tag)) {
      acc.push(tag);
   }
   return acc;
}, []);

console.log(usedTags);

Выберите подход, который лучше всего соответствует вашим нуждам и условиям работы. Имейте в виду, что удаление тегов из массива не означает их удаление из документа, это просто способ определить, какие теги используются, а какие нет. Если вы хотите удалить теги полностью, вам нужно будет использовать методы для удаления элементов из DOM-дерева, такие как remove().