DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’» is a community of 968,873 amazing developers

We're a place where coders share, stay up-to-date and grow their careers.

Create account Log in
Cover image for JavaScript DOM - Part 4 - innerHTML vs innerText vs textContent [video + article]
Tharun Shiv
Tharun Shiv

Posted on • Updated on

Textcontent vs Innerhtml JavaScript DOM - Part 4 - innerHTML vs innerText vs textContent [video + article]

This is going to be a multi-part Video + article tutorial series on JavaScript DOM. You're reading Part 4

You can read Part 3 here:

innerText | innerHTML | textContent

All three of them are attributes that you can get from the elements. They are not the same and we will be looking at how they are different with the below illustrations.

innerText

When applied to an element, it returns only the text which is inside the element, the text part wrapped by the element and nothing else, it also ignores the space.

syntax:

element.innerText
Enter fullscreen mode Exit fullscreen mode

example:

<p id="experiment">
  <br />
  Hello this is <span>Tharun</span> How are you?
  <br />
</p>
Enter fullscreen mode Exit fullscreen mode
let p = document.getElementById('experiment');
console.log(p.innerText)
Enter fullscreen mode Exit fullscreen mode

output

"
Hello this is Tharun How are you?
"
Enter fullscreen mode Exit fullscreen mode

innerHTML

When applied to an element, it returns the text part enclosed by the element, along with the HTML tags inside, and also considers the spacing given inside. Look at the example below.

syntax:

element.innerHTML
Enter fullscreen mode Exit fullscreen mode

example:

<p id="experiment">
  <br />
  Hello this is <span>Tharun</span> How are you?
  <br />
</p>
Enter fullscreen mode Exit fullscreen mode
let p = document.getElementById('experiment');
console.log(p.innerHTML)
Enter fullscreen mode Exit fullscreen mode

output

"
  <br>
  Hello this is <span>Tharun<span/> How are you?
  <br>
"
Enter fullscreen mode Exit fullscreen mode

textContent

When applied to an element, it returns the text part enclosed by the element and considers the spacing given inside. Look at the example below.

syntax:

element.textContent
Enter fullscreen mode Exit fullscreen mode

example:

<p id="experiment">
  <br />
  Hello this is <span>Tharun</span> How are you?
  <br />
</p>
Enter fullscreen mode Exit fullscreen mode
let p = document.getElementById('experiment');
console.log(p.textContent)
Enter fullscreen mode Exit fullscreen mode

output

"

  Hello this is Tharun How are you?

"
Enter fullscreen mode Exit fullscreen mode

So these are the main differences between these three that you need to know.
You can access and do a lot more magic by grabbing the elements. We will explore and do stuff in this series.

Next Part coming tomorrow, where we discuss about how you can get multiple elements by using getElementsByClassName.

Thank you for reading 😊

Considering Subscribing to my YouTube Channel if you like the Video content: https://youtube.com/c/developerTharun

Written by,

developertharun image

Thank you for reading, This is Tharun Shiv a.k.a Developer Tharun

Tharun Shiv

Top comments (6)

Collapse
 
venkat121998 profile image
venkat anirudh

These differences were always confusing. Good article. Now I get it. πŸ‘

Collapse
 
developertharun profile image
Tharun Shiv Author

thank you, glad it helped

Collapse
 
chandrika56 profile image
Jaya chandrika reddy

Yeah, same here

Collapse
 
developertharun profile image
Tharun Shiv Author

thank you, glad it helped

Collapse
 
chandrika56 profile image
Jaya chandrika reddy

Good series.. Looking forward for more

Collapse
 
developertharun profile image
Tharun Shiv Author

Sure, 10 more parts to the series, then we move on to the project 😊

In defense of the modern web

I expect I'll annoy everyone with this post: the anti-JavaScript crusaders, justly aghast at how much of the stuff we slather onto modern websites; the people arguing the web is a broken platform for interactive applications anyway and we should start over;

React users; the old guard with their artisanal JS and hand authored HTML; and Tom MacWright, someone I've admired from afar since I first became aware of his work on Mapbox many years ago. But I guess that's the price of having opinions.