document.querySelectorAll 메서드가 반환하는 NodeList라는 객체는 선택한 요소의 집합입니다. 쉽게 말해, 특정 선택자에 해당하는 여러 개의 DOM 요소들을 리스트 형태로 담고 있는 객체입니다.
예를 들어, HTML 문서에서 .tab-button 클래스를 가진 모든 요소를 선택하려면 다음과 같이 작성할 수 있습니다.
var tabButtons = document.querySelectorAll('.tab-button');
이렇게 하면, .tab-button 클래스를 가진 모든 요소들이 NodeList 객체로 반환되어 tabButtons 변수에 저장됩니다.
NodeList는 배열과 비슷한 형태를 가지고 있지만, 일반 배열의 메서드 (예: map, filter, reduce 등)를 사용할 수 없는 집합입니다.
반복문을 통해 NodeList 내의 각 요소에 접근하면, 각 요소에서는 classList.add나 classList.remove와 같은 메서드를 사용할 수 있습니다.
document.querySelectorAll('.tab-button')[0].addEventListener('click', function() {
let tabButton = document.querySelectorAll('.tab-button');
let tabContent = document.querySelectorAll('.tab-content');
for(let i =0; i< tabButton.length; i++){
tabButton[i].classList.remove('orange');
tabContent[i].classList.remove('show');
}
document.querySelectorAll('.tab-button')[0].classList.add('orange');
document.querySelectorAll('.tab-content')[0].classList.add('show');
});
document.querySelectorAll('.tab-button')[0].classList.add('orange');
document.querySelectorAll('.tab-content')[0].classList.add('show');