Разница между внутренним HTML и внутренним текстом: объяснение

Разница между innerHTMLи innerTextсвязана с тем, как они извлекают или изменяют содержимое HTML-элементов в JavaScript.

innerHTML— это свойство, которое позволяет вам получать доступ к содержимому HTML внутри элемента или изменять его, включая как теги HTML, так и текст внутри элемента. Когда вы используете innerHTMLдля получения содержимого элемента, он возвращает строку, которая представляет структуру HTML и текст внутри этого элемента, включая все дочерние элементы и их содержимое.

Вот пример:

<div id="exampleDiv">
  <p>This is some <strong>inner content</strong>.</p>
</div>

В JavaScript вы можете получить доступ к содержимому элемента exampleDiv, используя innerHTML:

const content = document.getElementById('exampleDiv').innerHTML;
console.log(content);

Выход:

<p>This is some <strong>inner content</strong>.</p>

С другой стороны, innerText— это свойство, которое извлекает или изменяет только текстовое содержимое элемента, исключая любые HTML-теги. Когда вы используете innerTextдля получения содержимого элемента, он возвращает строку, которая представляет текстовое содержимое внутри этого элемента, исключая любые дочерние элементы и их содержимое.

Продолжая предыдущий пример, вы можете получить доступ к текстовому содержимому элемента exampleDiv, используя innerText:

const textContent = document.getElementById('exampleDiv').innerText;
console.log(textContent);

Выход:

This is some inner content.

Подводя итог, основное различие между innerHTMLи innerTextзаключается в том, что innerHTMLвозвращает содержимое HTML, включая теги и текст, а innerTextвозвращает только текстовое содержимое, исключая любые HTML-теги.