๋ฐ์ํ
๐ ์ค๋ ํ ๊ฒ
โ๏ธ HA ๋ฌธ์ ํ๊ธฐ
4์ฃผ ๋์ ๋ฐฐ์ ๋ ๊ฒ๋ค์ด ์ด์งํฉ(?)๋ HA ๋ฌธ์ ๋ค์ ํ์๋ค. ๋ถ์กฑํ๊ฒ ๋๊ปด์ก๋ ๋ถ๋ถ๋ค์ด ์์๋๋ฐ, ์ต์ํด์ง๋๊น์ง ๋ณด๊ณ ๋ ๋ณธ๊ฒ ํจ๊ณผ๊ฐ ์๋ ๊ฒ ๊ฐ์์ ๋ฟ๋ฏํ๊ธฐ๋ ํ๊ณ ๋ญ๊ฐ ํ์๋ฆ ๋์๊ฒ ๊ฐ๊ธฐ๋ ํ๋ค.
โ๏ธAJAX, XML, fetchAPI ๊ณต๋ถ, ๋ธ๋ก๊น
์ด์ fetch API๋ฅผ ํ์ฉํด์ ๋ ์จ ์ฑ์ ๋ง๋ค์๋๋ฐ ๊ตฌ๊ธ๋งํ๋ฉด์ ๋ถ๋ถ์ ์ผ๋ก๋ง ์ดํดํ๊ณ ๋์ด๊ฐ๋ ์์ผ๋ก ์์ฑ์ ํ ๊ฒ ๊ฐ๋ค. ์์ง ๋ญ๊ฐ ์ ๋๋ก ์๊ณ ์๋ค๋ ๋๋์ด ๋ค์ง๊ฐ ์์์ ์ฐ์ฐํ๊ธฐ๋ ํ๊ณ HA๊ฐ ๋๋๋ฉด ์ข ๋ ์ฐพ์๋ด์ผ์ง ํ๊ณ ์๊ฐํ๊ณ ์์๋ค. ๊ทธ๋ ๊ฒ fetchAPI์ ๋ํ ๊ธ๋ค์ ์ฐพ์๋ณด๊ฒ ๋๋๋ฐ ๊ธ์ ๋ค ์ฝ๊ธฐ๋ ์ ์ AJAX, XMLHttpRequest, Promise๊ฐ์ ์ ๋ชจ๋ฅด๋ ๊ฐ๋ ๋ค์ด ์๊พธ๋ง ํ์ด๋์์ ๋๊น์ง ๋ณด์ง ๋ชปํด ๋ต๋ตํ ๋ง์์ด ๋ค์๋คใ ใ ๊ทธ๋์ ๊ทธ๋ฅ ํ๋์ฉ ์ ๋ณตํด๋ณด์๋ ๋ง์์ผ๋ก ํ๋์ฉ ์์๋ณด๋ฉฐ ๋ธ๋ก๊น ํ๊ณ ์๋ค.
๐ ๊ธฐ์ตํ ๊ฒ
โ๏ธAJAX (Asynchronous JavaScript And XML)
Javascript, XML์ ์ด์ฉํด ๋น๋๊ธฐ๋ก ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋ฐฉ์, ์๋ฒ๋ก๋ถํฐ ์นํ์ด์ง๋ฅผ ๋ฐ์ผ๋ฉด ์๋ ๋ชจ๋ ๋ฆฌ์์ค๋ฅผ ๋ค์ ๋ถ๋ฌ์์ผํ๋๋ฐ, ์ผ๋ถ๋ง์ ๊ฐฑ์ ํ ์ ์๊ฒ ํด์ค๋ค.
โ๏ธ XML
๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ์ ๋ฌํ ๋ชฉ์ ์ผ๋ก ๋ง๋ค์ด์ง ์ธ์ด ์ค ํ๋๋ก, HTML๊ฐ์ '๋ฌธ์ ๊ธฐ์ ์ธ์ด'์์ ํ์๋์์ง๋ง HTML๋ณด๋ค๋ ๋ฐ์ดํฐ ๋ด์ฉ์ ๊ธฐ์ ํ๋๋ฐ ์ข ๋ ํนํ๋์ด์๋ค!
โ๏ธ XMLHttpRequest
์๋ฒ๋ก๋ถํฐ ๋ฐ์์จ XML๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๊ฐ์ฒด!
* ๋ธ๋ผ์ฐ์ ๋ XMLHttpRequest ๊ฐ์ฒด๋ฅผ ์ด์ฉํ์ฌ Ajax ์์ฒญ์ ์์ฑํ๊ณ ์ ์ก
* ์๋ฒ๊ฐ ์์ฒญ์ ์๋ตํ๋ฉด XMLHttpRequest ๊ฐ์ฒด๋ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ฒ๋ฆฌํด์ค
โ๏ธ Promise
Promise๋ Javascript ๋น๋๊ธฐ ์ฒ๋ฆฌ์ ์ฌ์ฉ๋๋ ๊ฐ์ฒด๋ก, ์ฃผ๋ก ์๋ฒ์์ ๋ฐ์์จ ๋ฐ์ดํฐ๋ฅผ ํ๋ฉด์ ํ์ํ ๋ ์ฌ์ฉํ๋ค! ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๊ธฐ๋ ์ ์ ๋ค ๋ฐ์์จ ๊ฒ์ฒ๋ผ ํ๋ฉด์ ์ถ๋ ฅํ๋ คํ๋ฉด ๋น์ฐํ ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ฒ ๋๋๋ฐ, ์ด๋ฐ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ ์ค ํ๋์ด๋ค.
* new Promise() : ํ๋ก๋ฏธ์ค๋ ๊ฐ์ฒด ์์ฑ -> ์ฝ๋ฐฑ ํจ์ ์ธ์๋ก resolve, reject ์ฌ์ฉ๊ฐ๋ฅ
* Pending(๋๊ธฐ), Fulfilled(์ดํ), Rejected(์คํจ) 3๊ฐ์ง ์ํ๋ฅผ ๊ฐ์ง
* ๋น๋๊ธฐ ์์ ์ ์๋ฃํ์ ๋์ ์คํจํ์ ๋์ ๊ฒฐ๊ณผ ๊ฐ์ ๋ํ๋ธ๋ค.
โ๏ธ then(), catch()
์๋ฒ์์ ์ฑ๊ณต์ ์ผ๋ก ์๋ต์ ๋ฐ์์ฌ ๊ฒฝ์ฐ / ์๋ต์ด ์์ ๊ฒฝ์ฐ ๊ฐ๊ฐ ํธ์ถ๋ ๋ฉ์๋์ ๋ฐ๋ผ then() / catch()๋ก ๋๋์ด ์๋ต ๊ฒฐ๊ณผ / ์ค๋ฅ๋ฅผ ์ถ๋ ฅํ ์ ์๋ค!
๐ ๋ ๊ณต๋ถํ ๊ฒ
โ๏ธ Promise ๋ธ๋ก๊น
โ๏ธ Prototype ๋ธ๋ก๊น
โ๏ธ ์ง์ง๋ก ํ๋ฆฌ์ฝ์ค๊ฐ ๋๋ฌ๋ค. ์ด๋จธ์๋ธ ์ฝ์ค๋ฅผ ์์ํ๊ธฐ ์ ์ 4์ผ ์ ๋ ํผ์ ๊ณต๋ถํ ์ ์๋ ์๊ฐ์ด ์ฃผ์ด์ ธ์ ๊ทธ ๋์ ๋ญํ๋ฉด ์ข์ ์ง ์๊ฐํด๋ดค๋ค. ์ผ๋จ์ ๋ชป์ค๋ ์ ์ ํน ์๋๊ณ , ์ฝ๋ค ๋ง์๋ ์ฑ ๋ค๋ ๋ง์ ์ฝ์ด์ผ๊ฒ ๋ค ๐ ๊ทธ๋ฆฌ๊ณ ๋ค ๋๋ด์ง ๋ชปํ๋ ๋ถ๋ถ๋ค์ ๋ํ ๋ณด์ถฉ์ ํด๋ฌ์ผ๊ฒ ๋ค.
๋ฐ์ํ
'Daily > Today I Learned' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
210108_TIL (๊ผฌ๋ฆฌ์ฌ๊ท, ์๊ณ ๋ฆฌ์ฆ ๊ธฐ์ด) (0) | 2021.01.09 |
---|---|
210107_TIL (ES6 ๋ฌธ๋ฒ ์ ๋ฆฌ) (0) | 2021.01.08 |
210104_TIL (์ฌ๊ท๋ก TreeUI, StringfyJSONํจ์ ๊ตฌํํ๊ธฐ) (0) | 2021.01.05 |
210103_TIL (์ดํฐ๋ ์ด์ ..์ดํฐ๋ ์ดํฐ..) (0) | 2021.01.04 |
210102_TIL (๋ณต์ต, ํธ์ํ๋ฌ ๋ฆฌํฉํ ๋ง) (0) | 2021.01.03 |
๋๊ธ