DOM
Browser APIs
โ ์น ๋ธ๋ผ์ฐ์ ์ ๋ด์ฅ๋ API๋ก ์น ๋ธ๋ผ์ฐ์ ๊ฐ ํ์ฌ ์ปดํจํฐ ํ๊ฒฝ์ ๊ดํ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํ๊ฑฐ๋, ์ค๋์ค๋ฅผ ์ฌ์ํ๋ ๋ฑ ์ฌ๋ฌ๊ฐ์ง ์ ์ฉํ๊ณ ๋ณต์กํ ์ผ ์ํ ๊ฐ๋ฅ
- DOM
- Geolocation API
- WebGL
DOM ๊ฐ์
โ ๋ฌธ์ ๊ฐ์ฒด ๋ชจ๋ธ(Document Object Model)
โ ๋ฌธ์์ ๊ตฌ์กฐํ๋ ํํ์ ์ ๊ณตํ๋ฉฐ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๊ฐ DOM๊ตฌ์กฐ์ ์ ๊ทผํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณต
- ๋ฌธ์ ๊ตฌ์กฐ, ์คํ์ผ, ๋ด์ฉ ๋ฑ์ ์ฝ๊ฒ ๋ณ๊ฒฝํ ์ ์๋๋ก ๋์
- HTML ์ปจํ ์ธ ๋ฅผ ์ถ๊ฐ, ์ ๊ฑฐ, ๋ณ๊ฒฝํ๊ณ ๋์ ์ผ๋ก ํ์ด์ง์ ์คํ์ผ ์ถ๊ฐํ๋ ๋ฑ HTML/CSS ์กฐ์ ๊ฐ๋ฅ
โ HTML ๋ฌธ์๋ฅผ ๊ตฌ์กฐํ ํ์ฌ ๊ฐ ์์๋ฅผ ๊ฐ์ฒด(object)๋ก ์ทจ๊ธ
![domํธ๋ฆฌ](https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/DOM-model.svg/1200px-DOM-model.svg.png)
โ DOM ์ ๋ฌธ์๋ฅผ ๋
ผ๋ฆฌ ํธ๋ฆฌ๋ก ํํ
โ ์น ํ์ด์ง๋ ์ผ์ข
์ ๋ฌธ์(document)
โ DOM์ ์นํ์ด์ง์ ๊ฐ์ฒด ์งํฅ ํํ์ด๋ฉฐ, JavaScript์ ๊ฐ์ ์คํฌ๋ฆฝํธ ์ธ์ด๋ฅผ ์ด์ฉํด DOM์ ์์ ํ ์ ์์
DOM์ ์ ๊ทผํ๊ธฐ
โ ๋ชจ๋ ์น ๋ธ๋ผ์ฐ์ ๊ฐ ์ด๋ฏธ DOM ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๊ณ ์๊ธฐ ๋๋ฌธ์ ํน๋ณํ ํด์ผํ ์ผ์ ์๋ค.
DOM์ ์ฃผ์ ๊ฐ์ฒด
window
document
navigator, location, history, screen
๋ฑ
window
object
โ DOM์ ํํํ๋ ์ฐฝ
โ ๊ฐ์ฅ ์ต์์ ๊ฐ์ฒด(์์ฑ ์ ์๋ต ๊ฐ๋ฅ)
โ ํญ ๊ธฐ๋ฅ์ด ์๋ ๋ธ๋ผ์ฐ์ ์์๋ ๊ฐ๊ฐ์ ํญ์ ๊ฐ๊ฐ์ window ๊ฐ์ฒด๋ก ๋ํ๋ธ๋ค.
window
์ ๋ฉ์๋
<!-- ์ ํญ ์ด๊ธฐ -->
window.open()
<!-- ๊ฒฝ๊ณ ๋ํ ์์ ํ์ -->
window.print()
<!-- ์ธ์ ๋ํ ์์ ํ์ -->
window.alert()
document
object
![image](https://user-images.githubusercontent.com/109324637/197458469-acd8bcac-0a3b-49f4-ab15-813804ddd586.png)
โ ๋ธ๋ผ์ฐ์ ๊ฐ ๋ถ๋ฌ์จ ์นํ์ด์ง
โ ํ์ด์ง ์ปจํ
์ธ ์ ์ง์
์ ์ญํ ์ ํ๋ฉฐ, <body>
๋ฑ๊ณผ ๊ฐ์ ์๋ง์ ๋ค๋ฅธ ์์๋ค์ ํฌํจ
document
์ ์์ฑ ์์
![image](https://user-images.githubusercontent.com/109324637/197458659-0fa9b74d-b35d-4439-96f2-e46147e071d5.png)
โ ๋ฌธ์์ ์ ๋ชฉ
[์ฐธ๊ณ ] ํ์ฑ(Parsing)
โ ๊ตฌ๋ฌธ ๋ถ์, ํด์
โ ๋ธ๋ผ์ฐ์ ๊ฐ ๋ฌธ์์ด์ ํด์ํ์ฌ DOM Tree๋ก ๋ง๋๋ ๊ณผ์
'โญ Personal_Study > Javascript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋๊ธฐ์ ๋น๋๊ธฐ (0) | 2022.11.04 |
---|---|
Callback & Promise (0) | 2022.11.04 |
JavaScript์์์ This (0) | 2022.11.03 |
Event (0) | 2022.11.02 |
JavaScript๋ฅผ ํ์ฉํ DOM ์กฐ์ ๊ธฐ์ด (0) | 2022.11.02 |
๋๊ธ