#javascript #google-chrome-extension
Вопрос:
Я извлекаю все ссылки на веб-сайты и помещаю их в массив, где в конечном итоге я буду сравнивать их со списком JSON. Мне нужно, чтобы веб-сайты были сокращены до
Примеры (Как я пытаюсь придать массиву вид)
- google.com
- computers.intercom-clicks.com
- mad-websites.ru
- just-eat.com
Примеры ссылок
- https://mad-websites.ru/via/e?ob=RohpF3uuLGksOJfxJOwcgRL5vknYi4kC2aQRzvu2v3s=amp;h=04ce1caed8c7cf4b69d751230eaf7a2450660d67-o26qxr01_77963700909352amp;l=6ef96bea4775c44a5bc10cdaa661c5053819c0b8-7456283
- https://notifications.google.com/g/p/AD-FnEwlAH83isfsH0zLOoNuynSmz1pMuK9Y8guqew5CkdyaEu28Zu30iRcw-SI6y7LRO7v8Tqy6p_9LhGcQClO1e2P5WYSVNa9dWPVhmA
- https://finance.rambler.ru/?utm_source=headamp;utm_campaign=self_promoamp;utm_medium=toplineamp;utm_content=finance_media
- https://www.google.com/covid19?utm_source=Google-Maps-timelineamp;utm_medium=emailamp;utm_campaign=COVID-site-promo
В настоящее время мой код сокращает только некоторые веб-сайты, в то время как другие остаются прежними. Он также удалит все дубликаты.
const links = Array.from(document.querySelectorAll(".a3s a")).map(link => {
const url = new URL(link.href);
url.search = '';
return url.toString();
})
//removes duplicate links
const uniq = [...new Set(links)];
//window.alert(uniq);
return warningPopup(uniq);
}
Ответ №1:
Это то, что ты ищешь?
const links = Array.from(document.querySelectorAll(".a3s a")).map(link => {
const url = new URL(link.href);
return url.hostname;
})
//removes duplicate links
const uniq = [...new Set(links)];
document.write(uniq.join(', '))
<div class="a3s">
<a href="https://mad-websites.ru/via/e?ob=RohpF3uuLGksOJfxJOwcgRL5vknYi4kC2aQRzvu2v3s=amp;h=04ce1caed8c7cf4b69d751230eaf7a2450660d67-o26qxr01_77963700909352amp;l=6ef96bea4775c44a5bc10cdaa661c5053819c0b8-7456283"></a>
<a href="https://notifications.google.com/g/p/AD-FnEwlAH83isfsH0zLOoNuynSmz1pMuK9Y8guqew5CkdyaEu28Zu30iRcw-SI6y7LRO7v8Tqy6p_9LhGcQClO1e2P5WYSVNa9dWPVhmA"></a>
<a href="https://finance.rambler.ru/?utm_source=headamp;utm_campaign=self_promoamp;utm_medium=toplineamp;utm_content=finance_media"></a>
<a href="https://www.google.com/covid19?utm_source=Google-Maps-timelineamp;utm_medium=emailamp;utm_campaign=COVID-site-promo"></a>
</div>