알아야 할 'innerText'와 'textContent'의 미묘한 차이점
2828 단어 beginnershtmljavascript
Element.innerText
'element.innerText'가 다른 속성보다 우세한 곳은 innerText가 CSS 스타일을 고려한다는 사실입니다. 인간이 읽기를 선호하는 것을 렌더링하도록 선택합니다. 텍스트는 일반 텍스트로 렌더링됩니다. 스타일을 염두에 두고 'element.innerText'는 'node.textContent'와 달리 렌더링에서 모든 공백을 자릅니다.
'.innerText'가 무엇을 하는지 더 잘 보여주기 위해 아래에 HTML 샘플이 있습니다.
<div id='property-test'>
Flatagram is the <strong>best</strong> app ever! Wouldn't <em>you</em> agree?
</div>
브라우저에서 열리면 코드는 "Flatagram은 최고의 앱입니다! 동의하지 않습니까?"라는 문장을 렌더링합니다. "best"는 강한/굵은 태그로, "you"는 em/italic 태그로 둘러쌉니다.
const renderText = document.getElementById('property-test');
div를 새 변수에 할당했습니다. 새 변수 'renderText'에서 .innerText를 호출해 보겠습니다.
renderText.innerText
// => Flatagram is the best app ever! Wouldn't you agree?
일단 호출되면 렌더링되는 것은 일반 텍스트입니다. '.innerHTML'과 같은 HTML 태그를 포함하지 않고 '.textContent'와 같은 공백을 포함하지 않습니다.
Node.text콘텐츠
Node.textContent가 이벤트에서 'element.innerText'를 이기고 노드의 모든 요소를 렌더링해야 합니다.
<div id="market-options">
<div>mangos, coconuts, and pears</div>
<div style="visibility:hidden">all go great in a smoothie bowl.</div>
</div>
위의 코드에서 요소를 숨김으로 설정했지만 '.textContent'를 사용하면 할당된 설정을 무시하고 기록된 대로 표시됩니다.
mangos, coconuts, and pearsall go great in a smoothie bowl.
결론
이 게시물을 읽은 후 .innerText 및 .textContent 속성에 대해 새로운 것을 배웠기를 바랍니다. 그리고 하나의 소스로는 프로그래밍에 수반되는 지식의 깊이를 캡슐화하기에 충분하지 않다는 것을 알고 있기 때문에 이러한 속성의 뉘앙스와 코드에 미치는 영향에 대한 더 많은 예를 보여주기 위해 제가 제공한 추가 리소스를 확인하는 것이 좋습니다. .
자원
Reference
이 문제에 관하여(알아야 할 'innerText'와 'textContent'의 미묘한 차이점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/valenciawhite/the-subtle-differences-between-innertext-innerhtml-and-textcontent-you-should-know-3clc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)