Модифицировать ссылку на странице

Задача не простая, может кто сможет помочь.

Есть ссылки вида:

https://site.com
https://site.com/categories
https://site.com/categories/post

А нужно добавить к ним в конце .html

Ссылки с другими доменами не менять!


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

Автор решения: OPTIMUS PRIME

a[href^="https://site.com"] селектор берет все якоря, у которых href начинается (^=) с указанной строки.

let links = document.querySelectorAll('a[href^="https://site.com"]');

for (let link of links) {
  link.href = link.href.replace(/\/?$/, ".html");
  // $ — конец строки.
  // ? — совпадение 0 или 1 раз. Если в конце строки есть / - удалит и его.
  
  console.log(link.href);
}
<a href="https://site.com">Test</a>
<a href="https://site.com/categories">Test</a>
<a href="https://site.com/categories/">Test</a>
<a href="https://site.com/categories/post">Test</a>

<a href="https://google.com#q=https://site.com">Test</a>

→ Ссылка