innerHTML ์ textContent ๋ฉ์๋ ๋ชจ๋ ํ ์คํธ ๊ฐ์ ์ฝ์ด์ค๊ณ , ์ค์ ํ ์ ์๋ ๊ธฐ๋ฅ์ ํฉ๋๋ค.
ํ์ง๋ง ์ด ๋์ ์ฐจ์ด์ ์ ๋ถ๋ช ํฉ๋๋ค.
๋จผ์ innerHTML ๋ฉ์๋๋ ํด๋น ์์์ ํฌํจ๋ HTML*, XML**์ ์ ์ฒด ๋ด์ฉ์ ์ฝ์ด์ค๊ฑฐ๋ ์ค์ ํ ์ ์์ต๋๋ค.
๊ทธ๋์ ํ๊ทธ๋ ๋ฌผ๋ก ์ด๊ณ , HTML ์ฝ๋ ๋ด์ ๊ณต๋ฐฑ๊น์ง๋ ์ถ๋ ฅ๋ฉ๋๋ค. ํ์ง๋ง XSS*** ๊ณต๊ฒฉ ์ํ์ ์ทจ์ฝํ๋ค๋ ๋จ์ ์ด ์์ต๋๋ค.
์ด์ ๋ฐํด, textContent ๋ฉ์๋๋ ํด๋น ์์์ ๊ทธ ์์์ ํ ์คํธ ์ฝํ ์ธ ๋ฅผ ํ์ํฉ๋๋ค.
๋ฐ๋ผ์ innerHTML ๋ฉ์๋์๋ ๋ฌ๋ฆฌ HTML๋ก ๋ถ์ํ ํ์๊ฐ ์๋ค๋ ์ ์์ textContent์ ์ฑ๋ฅ์ด ๋ ์ข๊ณ XSS*** ๊ณต๊ฒฉ ์ํ์ด ์์ต๋๋ค.
๋ฐ๋ผ์ ๊ฒฐ๋ก ์ ์ผ๋ก ๊ฐ๊ธ์ textContent๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค. textContent๋ ์ฑ๋ฅ๊ณผ ๋ณด์์ ๊ฐ์ ์ด ์๊ณ , ๊ฒฐ๊ณผ์ ์ผ๋ก ํด๋น ๋ ธ๋์ raw text๋ฅผ ์ป๊ฒ ๋จ์ผ๋ก์จ ์ดํ ์๋ํ ๋๋ก ๊ฐ๊ณตํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
*HTML์ HyperText Markup Language์ ์ฝ์์ ๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ด์ฉํ๋ ์นํ์ด์ง ๊ตฌ์กฐ๋ฅผ ๋ด๋นํ๋ ๋งํฌ์ ์ธ์ด์ด์ tag๋ค์ ์งํฉ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
**XML์ HTML๊ณผ ๋งค์ฐ ๋น์ทํ ๋ฌธ์ ๊ธฐ๋ฐ์ ๋งํฌ์ ์ธ์ด(text-based markup language)์ ๋๋ค.
XML์ HTML์ฒ๋ผ ๋ฐ์ดํฐ๋ฅผ ๋ณด์ฌ์ฃผ๋ ๋ชฉ์ ์ด ์๋, ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ์ ๋ฌํ ๋ชฉ์ ์ผ๋ก๋ง ๋ง๋ค์ด์ก์ต๋๋ค.
***XSS์ Cross-site scripting์ ์ฝ์์ด๊ณ , ๊ณต๊ฒฉ์๊ฐ ์น ์ฌ์ดํธ์ ์ ์ฑ ์คํฌ๋ฆฝํธ๋ฅผ ์ฝ์ ํ์ฌ ๊ณต๊ฒฉํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
innerHTML ์ฐธ๊ณ
https://developer.mozilla.org/ko/docs/Web/API/Element/innerHTML
textContent ์ฐธ๊ณ
https://developer.mozilla.org/ko/docs/Web/API/Node/textContent
XML ์ฐธ๊ณ
http://www.tcpschool.com/xml/xml_intro_basic
XSS ์ฐธ๊ณ
https://developer.mozilla.org/en-US/docs/Glossary/Cross-site_scripting
'๐Language > JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
TIL) ๊ณ ์ฐจํจ์, ๋ด์ฅ๊ณ ์ฐจํจ์, map, filter, reduce (0) | 2022.05.25 |
---|---|
TIL) ๋ฌธ์์ด๊ณผ ๋ฐฐ์ด์ ๊ณตํต์ (0) | 2022.05.24 |
TIL) ์น ์ ํจ์ฑ ๊ฒ์ฌ, ๊ด์ฌ์ฌ ๋ถ๋ฆฌ (0) | 2022.05.18 |
TIL) DOM ๊ธฐ์ด, DOM ๋ค๋ฃจ๊ธฐ, CRUD, ๋ถ๋ชจ, ์์, ํ์ ์ฐพ๊ธฐ (0) | 2022.05.17 |
์๋ฐ์คํฌ๋ฆฝํธ๋ก ํ ์ ์๋ 7๊ฐ์ง (0) | 2022.05.17 |