Как оптимизировать код?

Добрый день, помогите оптимизировать код
у меня вот несколько таких блоков, в которых регион повторяется и проверка, возможно как-то проще и читабельнее сделать
let linkAll = [...d.querySelectorAll('.item_row')];
      linkAll.forEach((i) => {
        let region = i.querySelector('.item_region > a').textContent.trim()
        if(region == 'Минск') {
          let linkhref = (('https://zooby.by/'+i.getAttribute('href')));
          data.push({link: linkhref});
        }
      });
      let nameAll = [...d.querySelectorAll('.item_row')];
      nameAll.forEach((i) => {
        let region = i.querySelector('.item_region > a').textContent.trim()
        let title = i.querySelector('.title').textContent;
        console.log(title);
        if(region == 'Минск') {
          let nameText = title;
          data.push({name: nameText});
        }
      });
  • Вопрос задан
  • 86 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Можно постараться не повторять себя (DRY = don't repeat yourself).
const data = [];

document.querySelectorAll('.item_row').forEach(row => {
  const region = row.querySelector('.item_region > a')?.textContent?.trim();
  if (region !== 'Минск') return;

  const name = row.querySelector('.title')?.textContent;
  const link = 'https://zooby.by/' + row.getAttribute('href');

  data.push({ name, link });
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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