
HTML 문서에서 태그 이름을 기준으로 요소를 선택해야 할 때,
document.getElementsByTagName메서드를 사용할 수 있다. 이는 태그 이름에 따라 요소들을 한꺼번에 선택하는 기능을 제공한다. 이번에는 이 메서드의 활용법과 주의점을 알아보자.
getElementsByTagName 메서드const elements = document.getElementsByTagName("태그이름");
태그이름: 선택하려는 HTML 태그의 이름을 문자열로 전달.HTML 문서에서 button 태그를 선택하는 코드:
const btns = document.getElementsByTagName('button');
console.log(btns);
결과는 다음과 같이, 문서 내에 있는 모든 button 태그가 포함된 HTMLCollection 형태로 반환된다.

특별히 *를 전달하면 문서의 모든 태그를 선택할 수 있다.
const allTags = document.getElementsByTagName("*");
console.log(allTags);
이 경우 HTML 문서 내의 모든 태그들이 반환된다. 하지만, 이는 매우 광범위한 선택이므로 실수를 유발할 가능성이 크다.
getElementsByTagName와 getElementsByClassName의 공통점Elements에 s가 붙어 있다.HTMLCollection을 반환.HTMLCollection은 배열처럼 보이지만, 배열 메서드(push, splice 등`)는 사용할 수 없다.getElementsByTagName은 특정 태그를 한꺼번에 다뤄야 할 때 유용하다. 예를 들어, 문서 내 모든 button 태그의 텍스트를 출력해 보자.
<button>Button 1</button>
<button>Button 2</button>
const buttons = document.getElementsByTagName("button");
// for...of 루프를 활용해 각 버튼 출력
for (const button of buttons) {
console.log(button);
}
// 출력:
// <button>Button 1</button>
// <button>Button 2</button>
*를 사용해 모든 태그를 선택하면 코드가 복잡해지고 실수를 유발할 가능성이 있다.getElementsByTagName보다 getElementById나 getElementsByClassName 같은 메서드가 더 적합하다.document.getElementsByTagName는 태그 이름을 기준으로 요소를 선택한다.HTMLCollection이며, 유사 배열 형태로 제공된다.*는 특별한 의도가 없다면 사용하지 않는 것이 좋다.