개발자

HTML의 tagName을 모아둔 타입이 있을까요?

2024년 06월 19일조회 47

content 분류 - sectioning, phrase, metadata... - 에 따라 tagName이 나뉘어져 있으면 좋겠다는 생각...이었지만 검색한 걸로는 아직 오픈 소스나 @type에 그런 정의가 없는 것 같았습니다. 그래서 한땀한땀 직접 만든 것을 사용하고 있었는데, 제가 못 찾고 있을 걸 수도 있어 질문 남겨봅니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

포크코딩님의 프로필 사진

키값(태그 이름)만 필요하신거면 아래 타입 쓰시면 됩니다.

1type TagNames = keyof HTMLElementTagNameMap; // a, div, ...;
상현님의 프로필 사진

상현

작성자

프론트엔드 개발자2024년 06월 19일

네. 평소에 사용하던 것이 적어주신 해당 타입이었습니다. 누가 그걸 html content concept에 맞게 분류해 준 것이 없을까... 했는데, 아직 찾고 있네요;

포크코딩님의 프로필 사진

포크코딩

별빛상단 단주2024년 06월 19일

이런 타입은 단순 분류라, 기준을 설정하시고 ai한테 만들어 달라하면 금방 만들어줄거 같습니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 06월 19일

HTML 태그 이름을 모아둔 공식적인 타입이나 인터페이스는 존재하지 않습니다. 당신의 필요에 맞게 만드는 것이 최선일 수 있습니다. 이는 각각의 프로젝트에서 사용되는 HTML 태그가 다르고, 그에 따라 필요한 태그 유형도 달라질 수 있기 때문입니다. 그러나 TypeScript를 사용하고 있다면, 'HTMLElementTagNameMap' 이라는 내장된 인터페이스를 확인해보실 수 있습니다. 이 인터페이스에는 모든 표준 HTML 태그 이름과 관련 DOM 요소 유형이 매핑되어 있습니다. ```typescript interface HTMLElementTagNameMap { "a": HTMLAnchorElement; "abbr": HTMLElement; "address": HTMLElement; // ... } ``` 이 인터페이스를 사용하면 HTML 태그 이름을 마치 type처럼 사용할 수 있으며, 이를 통해 실수를 줄이고 코드의 명확성을 높일 수 있습니다. 하지만 기술적으로 보면, 이것은 정확히 HTML태그의 이름을 나타내지 않고, 해당 이름과 연관된 DOM 요소 객체의 유형을 나타냅니다. 따라서 직접적으로 HTML태그 이름들을 모아둔 리스트나 enum을 만드는 것은 여전히 개발자에게 달려있습니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!