diff --git a/frontend/src/utils/index.ts b/frontend/src/utils/index.ts index 05b562fe2..58563d777 100644 --- a/frontend/src/utils/index.ts +++ b/frontend/src/utils/index.ts @@ -1 +1,2 @@ export * from './date'; +export * from './isExistentElement'; diff --git a/frontend/src/utils/isExistentElement.ts b/frontend/src/utils/isExistentElement.ts new file mode 100644 index 000000000..971a10052 --- /dev/null +++ b/frontend/src/utils/isExistentElement.ts @@ -0,0 +1,18 @@ +type NullableElement = Element | HTMLElement | null | undefined; + +export const isExistentElement = (element: NullableElement, elementName: string): boolean => { + const isExistentElement = element !== null && element !== undefined; + const isHTMLElementOrElement = element instanceof HTMLElement || element instanceof Element; + + if (!isExistentElement) { + console.error(`${elementName}을/를 찾을 수 없습니다.`); + return false; + } + + if (!isHTMLElementOrElement) { + console.error(`${elementName}은/는 Element 이하의 타입이 아닙니다.`); + return false; + } + + return true; +};