>웹 프론트엔드 >JS 튜토리얼 >일반 JavaScript를 사용하여 텍스트에서 HTML 태그를 효율적으로 제거하는 방법은 무엇입니까?

일반 JavaScript를 사용하여 텍스트에서 HTML 태그를 효율적으로 제거하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-27 07:11:13594검색

How to Efficiently Remove HTML Tags from Text Using Plain JavaScript?

일반 JavaScript의 텍스트에서 HTML 태그 제거

문자열에서 HTML 태그를 제거하는 것은 웹 개발의 일반적인 작업입니다. 이 목적으로 사용할 수 있는 라이브러리가 있지만 일반 JavaScript를 사용하여 이를 달성하는 것이 가능합니다.

브라우저의 DOM 사용

코드가 브라우저에서 실행되는 경우 가장 쉬운 방법은 접근 방식은 브라우저가 HTML 구문 분석을 처리하도록 하는 것입니다. 이는 임시 DOM 요소를 생성하고 해당 요소의 innerHTML 속성을 HTML 문자열로 설정하여 수행할 수 있습니다. 결과 textContent 또는 innerText 속성에는 HTML 태그가 없는 텍스트가 포함됩니다.

function stripHtml(html) {
   let tmp = document.createElement("DIV");
   tmp.innerHTML = html;
   return tmp.textContent || tmp.innerText || "";
}

주의: 이 방법은 사용자 생성 콘텐츠와 같이 신뢰할 수 없는 입력을 처리할 때 주의해서 사용해야 합니다.

사용 DOMParser

또 다른 방법은 최신 브라우저에서 사용할 수 있는 DOMParser 인터페이스를 사용하는 것입니다. 이를 통해 DOM 요소를 생성하지 않고도 HTML 문자열을 구문 분석할 수 있습니다.

function stripHtml(html) {
   const doc = new DOMParser().parseFromString(html, "text/html");
   return doc.body.textContent;
}

정규 표현식

정규 표현식을 사용하여 문자열에서 HTML 태그를 제거할 수도 있지만, 이 접근 방식은 일반적으로 위의 방법에 비해 덜 효율적이고 강력합니다.

function stripHtml(html) {
   return html.replace(/<.+?>/g, "");
}

다음의 제한 사항과 보안에 미치는 영향을 고려해야 합니다. 사용 사례에 적합한 솔루션을 선택할 때 각 방법을 선택하세요.

위 내용은 일반 JavaScript를 사용하여 텍스트에서 HTML 태그를 효율적으로 제거하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.