const getClosestElement = (element, selector) => {
let evaluate = false;
// test() 메서드는 주어진 문자열이 정규 표현식을 만족하는지 판별하고, 그 여부를 true 또는 false로 반환합니다.
// 앞에 . 이 있는가? 라고 묻고 있습니다.
if (/^\./.test(selector)) {
evaluate = element.classList.contains(selector);
} else {
evaluate = element.tagName === selector.toUpperCase();
}
if (evaluate) {
return element;
}
return getClosestElement(element.parentElement, selector);
}
export default getClosestElement;
출처: https://github.com/paullabkorea/theJungleFinalCodingTestFrontEnd
'JS소스모듈' 카테고리의 다른 글
허허허헣 (0) | 2022.11.09 |
---|---|
localstorage에 리소스 저장 및 조회 (0) | 2022.11.09 |
리스트안에서 엘리먼트의 인덱스 번호 찾기 (0) | 2022.11.09 |
자신의 모든 자식 엘리먼트 제거하기 (0) | 2022.11.09 |
jwt 토큰 만료체크 (0) | 2022.11.09 |