2023.05.25

์ฐธ๊ณ 

https://www.howdy-mj.me/dom/what-is-dom

<aside> ๐Ÿ’ก "์ง์ ‘ DOM์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์€ ์ง€์–‘ํ•ด์•ผ ํ•œ๋‹ค.

</aside>

โ†’ ์ด๋Š” DOM์— ์ง์ ‘ ์ ‘๊ทผํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ๋˜์ง„ ์•Š์ง€๋งŒ, DOM์ด ์ง์ ‘ ๋ณ€๊ฒฝ๋œ๋‹ค๋ฉด ์‚ฌ์†Œํ•œ ๋ณ€๊ฒฝ์‚ฌํ•ญ์—๋„ ์ „์ฒด๊ฐ€ ์žฌ๋ Œ๋”๋ง ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ธŒ๋ผ์šฐ์ €์— ๊ณผ๋ถ€ํ•˜๊ฐ€ ์˜ฌ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ตœ๋Œ€ํ•œ DOM์— ์ง์ ‘ ์ ‘๊ทผํ•˜์ง€ ๋ง์•„์•ผ ํ•œ๋‹ค, ๋ผ๊ณ  ์ดํ•ดํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค.

โ†’ ์ง€๊ด€: ๊ฐ€์ƒ๋”์ด ๋”์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ํ•œ ๋ฒˆ์— ๋ชจ์•„๋’€๋‹ค๊ฐ€ ํ•œ ๋ฒˆ์— ๋ฆฌ๋ Œ๋”๋งํ•˜๊ณ  ๋”์€ ๋ณ€๊ฒฝํ•  ๋•Œ๋งˆ๋‹ค ๋ฐ”๋กœ๋ฐ”๋กœ ๋”์กฐ์ž‘์ด ์ ์€ ๊ฒฝ์šฐ์—๋Š” ๊ฐ€์ƒ์˜ ๋”์ด ๋” ๋А๋ฆฌ๋‹ค ๋”์— ๋งŽ์ด ์ ‘๊ทผํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ๋ฉด ๋”์ด ๋” ๋น ๋ฅผ ์ˆ˜ ์žˆ๋‹ค

DOM ์กฐ์ž‘์ด ๋งŽ์ง€ ์•Š๋‹ค๋ฉด VirtualDOM์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์˜คํžˆ๋ ค ๋” ๋А๋ฆผ

์ •๋ฆฌ : ๋”์กฐ์ž‘์ด ์ ์€ ๊ฒฝ์šฐ์—๋Š” ์ง์ ‘ ๋”์„ ๊ฑด๋“ค์ด๋Š” ๊ฒƒ์ด ๋น ๋ฅด๊ณ , ๋งŒ์•ฝ ๋งŽ๋‹ค๋ฉด ๊ฐ€์ƒ์˜ ๋”์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ๋น ๋ฅด๋‹ค.

<aside> ๐Ÿ’ก Js = DOM, React = Virtual DOM

</aside>

DOM์ด๋ž€?

DOM (Document Object Model) : HTML, XML document์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜๊ณ  ํ‘œํ˜„ํ•˜๋Š” API

๋ฌธ์„œ ๊ฐ์ฒด ๋ชจ๋ธ : ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด๋กœ html์š”์†Œ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋„๋ก ์›น ๋ฌธ์„œ๋ฅผ ๊ฐ์ฒดํ™” ํ•œ ๊ฒƒ

HTML ๋ฌธ์„œ์— ๋™์ ์ธ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์ฃผ๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด DOM

Untitled

JavaScript๋Š” ์ด model๋กœ ์›น ํŽ˜์ด์ง€์— ์ ‘๊ทผํ•˜๊ณ , ํŽ˜์ด์ง€๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.