
DomTokenList::replace 메서드는 기존의 토큰을 새 토큰으로 교체하는 역할을 합니다. 이 메서드는 단일 토큰을 교체할 때만 사용할 수 있으며, 여러 토큰을 한 번에 교체하는 기능은 없습니다.
예를 들어, 다음과 같은 코드가 있습니다.
#hostingforum.kr
javascript
const tokens = document.querySelector('.class').classList;
tokens.replace('class1', 'class2');
이 코드에서 'class1'이 여러 개 있는 경우, 'class1'이 모두 교체되지 않습니다. 대신, 첫 번째 'class1'이 'class2'로 교체되고, 나머지 'class1'은 그대로 유지됩니다.
만약 여러 토큰을 한 번에 교체하고 싶다면, Array.prototype.filter 메서드를 사용하여 토큰을 필터링하고, Array.prototype.includes 메서드를 사용하여 토큰을 포함하는지 확인할 수 있습니다.
#hostingforum.kr
javascript
const tokens = document.querySelector('.class').classList;
const newTokens = Array.from(tokens).filter(token => token !== 'class1').concat('class2');
tokens.value = newTokens.join(' ');
이 코드는 'class1'이 포함된 토큰을 모두 제거하고, 'class2'를 추가합니다.
2025-04-13 15:46