..
Check Nodelist Type
문제
메소드에 타입 예외 처리를 하고, 일부 메소드 명을 수정하니 작동하던 기능에서 오류가 났다.
원인
타입 예외 처리에서 NodeList
가 배열로 이루어져 있기 때문에 배열로 타입 검사를 한 게 문제였다.
기존 코드
class Common {
isArray(value) {
return Array.isArray(value);
}
/**
* @param {NodeList} els
*/
removeClass(els) {
const _t = this;
if (!_t.isArray(els)) return;
// ... code
}
}
해결
NodeList 타입 검사 메소드를 추가해 바꾸었다.
class Common {
isNodeList(value) {
return NodeList.prototype.isPrototypeOf(value);
}
/**
* @param {NodeList} els
*/
removeClass(els) {
const _t = this;
if (!_t.isNodeList(els)) return;
// ... code
}
}