Как я могу отфильтровать другое имя тега элемента DOM с помощью javascript

#javascript #html #node.js #reactjs

#javascript #HTML #node.js #reactjs

Вопрос:

Здесь я вставил все необходимые теги внутри массива, используя querySelectorAll, я хочу выполнить разные действия для разных элементов условно. Как я могу получить другое имя тега при повторении каждого элемента,

 const allCanvas = document.getElementsByTagName("canvas");
const allSvg = document.querySelectorAll(
  ".widget-graph-container svg.rsm-svg "
);
const allElements = [...allCanvas, ...allSvg];

here I have different canvas and svg elements inside allElements array, I want to iterate through each element inside array and perform different action.

allElements.forEach((el, index) => { 
  if (el == 'canvas') { 
    // do something 
  } else if (el == 'svg') { 
   // do something
  }
})
 

Ответ №1:

В цикле forEach вы можете использовать свойство tagName для текущего элемента итерации и сравнить его. Обратитесь к MDN: https://developer.mozilla.org/en-US/docs/Web/API/Element/tagName