728x90
๋ฐ์ํ
- ์๋ฐ์คํฌ๋ฆฝํธ๋
๋ค์ด๋ฒ, ๊ตฌ๊ธ๊ณผ ๊ฐ์ ์น ํ์ด์ง๋ฅผ ๋์ ์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ๊ฐ๋ฐ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด - ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ์ ์ฐจ์ด๋?
1) ๋ผ์ด๋ธ๋ฌ๋ฆฌ : ๊ฐ๋ฐ์๊ฐ ํน์ ๊ธฐ๋ฅ์ ์ํํ ์ ์๋๋ก ์ ๊ณตํ๋ ๋๊ตฌ ๋ชจ์, ํ์ํ ๋ ํธ์ถํด์ ์ฌ์ฉํ ์ ์๋ค. Numpy, Pandas ๋ฑ์ด ์์
2) ํ๋ ์์ํฌ : ์ ์ฒด ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ํ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ์ ๊ณต, ๊ฐ๋ฐ์๊ฐ ๊ทธ ํ ์์์ ํ์ํ ์ฝ๋๋ฅผ ์์ฑ - ์๋ฐ์คํฌ๋ฆฝํธ์ ํ์
๋ถ๋ฅ?
1) ์์ ํ์ ์๋ฃํ : ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๋์ค์ ๋จ ํ๋์ ๊ฐ๋ง ๊ฐ์ง๋ SYMBOLํ : BigInt, ๋ฌธ์, boolean, null, undefined
2) ๋น์์ ํ์ ์๋ฃํ : ํ ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ ๊ฐ์ ๊ฐ์ง๋ ํ์ : ๊ฐ์ฒด, ํจ์, ๋ฐฐ์ด - Infinity์ Nan์ ๋ํด์ ์ค๋ช
?
1) Infinity : ๋ฌดํ๋๋ฅผ ๋ํ๋ด๋ ๊ฐ์ผ๋ก, ์ด๋ ์ซ์๋ ์ง 0์ผ๋ก ๋๋๋ ๊ฒฝ์ฐ ๋ฐํ๋๋ ๊ฐ์ด๊ธฐ๋ ํ๋ค
2) NaN : ์ซ์๊ฐ ์๋๋ผ๋ ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์๊ณ ๋ฌธ์์ด์ ์ซ์๋ก ๋๋๋ ๊ฒ๊ณผ ๊ฐ์ด ๋ถ์ ํํ ์ฐ์ฐ์ ํ ๊ฒฝ์ฐ ๋ฐํ๋๋ ๊ฐ๊ฐ์ ๊ฒฝ์ฐ์ด๋ค - null๊ณผ undefined์ ์ฐจ์ด์ ๋ํด์ ์ค๋ช
?
1) null : ์ค์ง null ๊ฐ๋ง ํฌํจํ๋ ์๋ฃํ์ผ๋ก ์ฌ์ฉ๋๊ณ ์กด์ฌํ์ง ์๊ฑฐ๋ ์ ์ ์๋ ๊ฐ์ ๋ํ๋ผ ๋ ์ฌ์ฉ
2) undefined : ๋ณ์์ ๊ฐ์ด ํ ๋น๋์ง ์์ ์ํ์ผ ๋ ์๋์ผ๋ก undefined ๊ฐ์ด ํ ๋น๋จ! - === ์ฐ์ฐ์์ == ์ฐ์ฐ์์ ์ฐจ์ด์ ?
1) === ์ฐ์ฐ์ : ๋ ๊ฐ๊ณผ ๋ ๋ณ์์ ์๋ฃํ๊น์ง ๊ฐ์์ง๋ฅผ ๋น๊ตํ๋ ์ฐ์ฐ์
2) == ์ฐ์ฐ์ : ๋ ๊ฐ์ ์๋ฃํ์ ๋น๊ตํ์ง ์๊ณ , ์ค์ง ๊ฐ์ด ์ผ์นํ๋์ง๋ฅผ ๋น๊ตํ๋ ์ฐ์ฐ์ - let๊ณผ var์ ์ฐจ์ด์ +const?
1) let
- ์ฌํ ๋น ๊ฐ๋ฅ ์ฌ๋ถ : ๊ฐ๋ฅ
- ์ค์ฝํ : ๋ธ๋ก ์ค์ฝํ
- ํธ์ด์คํ : ์ ์ธ๋ง ํธ์ด์คํ ๋๋ฉฐ TDZ ์ ์ฉ
- ์ด๊ธฐํ ํ์ ์ฌ๋ถ : ์ ํ
- ์ถ์ฒ ์ํฉ : ๊ฐ์ด ๋ณ๊ฒฝ๋ ๊ฐ๋ฅ์ฑ์ด ์์ ๋
2) var
- ์ฌํ ๋น ๊ฐ๋ฅ ์ฌ๋ถ : ๊ฐ๋ฅ
- ์ค์ฝํ : ํจ์ ์ค์ฝํ
- ํธ์ด์คํ : ์ ์ธ๊ณผ ์ด๊ธฐํ ๋ชจ๋ ํธ์ด์คํ ๋จ
- ์ด๊ธฐํ ํ์ ์ฌ๋ถ : ์ ํ
- ์ถ์ฒ ์ํฉ : ์ฌ์ฉ ๋น์ถ์ฒ(์ค๋๋ ๋ฐฉ์)
3) const
- ์ฌํ ๋น ๊ฐ๋ฅ ์ฌ๋ถ : ๋ถ๊ฐ๋ฅ
- ์ค์ฝํ : ๋ธ๋ก ์ค์ฝํ
- ํธ์ด์คํ : ์ ์ธ๋ง ํธ์ด์คํ ๋๋ฉฐ TDZ ์ ์ฉ
- ์ด๊ธฐํ ํ์ ์ฌ๋ถ : ์ ์ธ ์ ๋ฐ๋์ ์ด๊ธฐํ ํ์
- ์ถ์ฒ ์ํฉ : ๊ฐ์ด ๋ณ๊ฒฝ๋์ง ์์์ผ ํ ๋ - ํธ์ด์คํ
์ด๋?
์์ง ์ ์ธ๋์ง ์์ ํจ์๋ ๋ณ์๋ฅผ ํด๋น ์ค์ฝํ์ ๋งจ ์๋ก ๋์ด์ฌ๋ ค์ ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๊ฒ ํ๋ js์ ๋์ ๋ฐฉ์ - ๊ตฌ์กฐ๋ถํดํ ๋น์ด๋?
๋ฐฐ์ด ์์๋ ๊ฐ์ฒด์ ํ๋กํผํฐ๋ฅผ ๋ถํดํด์ ๊ทธ ๊ฐ๋ค์ ๊ฐ๊ฐ์ ๋ณ์์ ํ ๋นํ๋ ์๋ฐ์คํฌ๋ฆฝํธ ํํ์('...'๊ธฐํธ๋ฅผ ์ฌ์ฉ) - spread์ rest
1) spread
- ํน์ ๋ฐฐ์ด์ ์์๋ ๊ฐ์ฒด์ ํ๋กํผํฐ ๊ฐ์ ํผ์น๋ ์ญํ ์ ํ๋ค
- ๋์ผํ ์ฝ๋๋ฅผ ์ฌ๋ฌ ๋ฒ ์์ฑํด์ผ ํ๋ ๊ณผ์ ์์ ์ฝ๋๋ฅผ ๋์ฑ ๊ฐ๋จํ๊ฒ ์์ฑํ ์ ์๋ค
- ์์์ ์๊ด์์ด ์ฌ๋ฌ ๋ฒ ๋ฐ๋ณตํด์ ์ฌ์ฉํ ์ ์๋ค
2) rest
- ํน์ ๋ถ๋ถ์ ํ๋์ ๋ฐฐ์ด์ด๋ ๊ฐ์ฒด๋ก ๋ฌถ๋ ์ญํ ์ ํ๋ ๋ฌธ๋ฒ
- ๊ฐ์ฒด์์ rest๋ ๊ตฌ์กฐ ๋ถํด ํ ๋น๊ณผ ํจ๊ป ์ฌ์ฉ๋๋ฉฐ, ์ํ๋ ๊ฐ๋ค์ ๊บผ๋ด๊ณ ๋๋จธ์ง ๊ฐ์ ๋ณ๋๋ก ๋ฌถ์ด์ ํ ๋นํ ์ ์๋ค
- rest ๋ฌธ๋ฒ์ spread์๋ ๋ค๋ฅด๊ฒ ์์์ ์๊ด์์ด ์ฌ๋ฌ๋ฒ ์์ฑํ ์ ์๊ณ , ํญ์ ๋งจ ๋ง์ง๋ง์ ์์ฑํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ฃผ์ํด์ ์์ฑํด์ผ ํ๋ค - promise ๊ฐ์ฒด๋?
- js์์ ํน์ ์์ ์ ๋น๋๊ธฐ๋ก ์ฒ๋ฆฌํ ๋ ์ฌ์ฉํ๋ ๊ฐ์ฒด
- ํ๋ก๋ฏธ์ค ๊ฐ์ฒด๋ ๊ฐ์ฒด ์์ฑ ์ ์ธ์๋ก excutor๋ผ๋ ์คํ ํจ์๋ฅผ ์ ๋ฌํ๊ณ , ์คํ ํจ์์๋ ๋งค๊ฐ๋ณ์๋ก resolve์ reject๋ผ๋ ์ฝ๋ฐฑํจ์๋ฅผ ์ ๋ฌํ๋ค
- ํ๋ก๋ฏธ์ค ๊ฐ์ฒด๊ฐ ์์ฑ๋จ๊ณผ ๋์์ excutor๊ฐ ์คํ๋๊ณ , excutor์์ ์ํ๋ ์์ ์ด ์ฒ๋ฆฌ๋๋ค
- ํ๋ก๋ฏธ์ค ๊ฐ์ฒด์ excutor๋ ์์ ์ฒ๋ฆฌ์ ์ฑ๊ณ ์ฌ๋ถ์ ๋ฐ๋ผ ์ฑ๊ณตํ์ ๊ฒฝ์ฐ resolve, ์คํจํ์ ๊ฒฝ์ฐ reject๊ฐ ํธ์ถ๋๋ค - async & await๋?
1) async
- "๋น๋๊ธฐ ์์ ์ ์ฝ์(Promise)ํ๋ ํจ์"๋ฅผ ํ์ํ๋ ๊ฐํ ๊ฐ์ ์ญํ ์ ๋๋ค.
- ๊ฐํ(async)์ ๋ณด๋ฉด "์ด ํจ์๋ ๋์ค์ ๊ฒฐ๊ณผ๋ฅผ ์ค ๊ฑฐ์ผ"๋ผ๊ณ ์ ์ ์์ต๋๋ค.
- ํจ์์ async๋ฅผ ๋ถ์ด๋ฉด ์๋์ผ๋ก Promise๋ฅผ ๋ฐํํฉ๋๋ค.
- ๋น๋๊ธฐ ์์ ์ ํฌํจํ๊ณ ์๋ ํ๋ก๋ฏธ์ค ๊ฐ์ฒด๋ฅผ ๋ฐํํ๋ ํจ์์ ์์ฑํ๋ ํค์๋์ด๊ธฐ๋๋ฌธ์, async๋ฅผ ์์ฑํ๋ฉด ์ฝ๋๋ฅผ ๋ ์ง๊ด์ ์ผ๋ก ํด์ํ ์ ์๋ค
2) await
- async ํจ์ ์์์๋ง ์ฌ์ฉํ ์ ์๋ ํค์๋๋ก, ๋น๋๊ธฐ ์์ (Promise)์ด ๋๋ ๋๊น์ง ๊ธฐ๋ค๋ ธ๋ค๊ฐ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํฉ๋๋ค.
- await๋ ๋ง์น ์๋น์์ ์์์ด ๋์ฌ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ์๋๊ณผ ๊ฐ์๋ฐ, ์๋์ ์์์ ๊ธฐ๋ค๋ฆฌ์ง๋ง, ์์์ด ๋์ฌ ๋๊น์ง ๋ค๋ฅธ ์ฌ๋๊ณผ ๋ํ๋ฅผ ํ ์๋ ์์(๋น๋๊ธฐ ์์ ) - JSON์ด๋?
- ๋ฐ์ดํฐ๋ฅผ ํ ์คํธ ํ์์ผ๋ก ์ ์ฅํ๊ณ ๊ตํํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๊ฐ๋ณ๊ณ ์ฝ๊ธฐ ์ฌ์ด ๋ฐ์ดํฐ ํฌ๋งท
- ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ์ฌ์ฉ
- JSON์ JavaScript ๋ฌธ๋ฒ์ ๊ธฐ๋ฐ์ผ๋ก ํ์ง๋ง, Python, Java, C++, PHP ๋ฑ ๊ฑฐ์ ๋ชจ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์ฌ์ฉ ๊ฐ๋ฅ
- ํค-๊ฐ ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ํํ - DOM์ด๋?
- ์๋ฐ์คํฌ๋ฆฝํธ๋ DOM์ ํตํด ์น ํ์ด์ง ์์์ ์ ๊ทผํ ์ ์๋ค
- DOM์ ์ฌ์ฉํ๋ฉด HTML ๋ฌธ์๋ฅผ ๋์ ์ผ๋ก ์์ , ์ถ๊ฐ, ์ญ์ ํ๊ณ ์ฌ์ฉ์์ ์ํธ์์ฉํ ์ ์์ต๋๋ค.
- ์ฃผ์ ๊ฐ์ฒด: document, Node, ์์ ๋ ธ๋ ๋ฑ
- ์ฃผ์ ๋ฉ์๋: getElementById, querySelector, createElement, appendChild ๋ฑ
- DOM์ ์น ํ์ด์ง๋ฅผ ํธ๋ฆฌ ๊ตฌ์กฐ๋ก ํํํ๋ฉฐ, JavaScript๋ฅผ ํตํด ๋์ ์ผ๋ก ์กฐ์ํ ์ ์๋ ์ธํฐํ์ด์ค์ ๋๋ค. - ๋ก์ปฌ ์คํ ๋ฆฌ์ง๋?
- ์น ๋ธ๋ผ์ฐ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ์ ์ฅ์์ ๊ฐ์ ๊ธฐ๋ฅ
- ๋ก์ปฌ ์คํ ๋ฆฌ์ง๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์๊ฐ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ข ๋ฃํ๋๋ผ๋ ๊ธฐ์กด์ ์น ํ์ด์ง ๋ด์์ ์ ์ฅํ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ ์ ์งํ ์ ์๋ค
- ๋ก์ปฌ ์คํ ๋ฆฌ์ง๋ ํ ์คํธ ๋ฐ์ดํฐ๋ง ์ ์ฅํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด ํน์ ๋ฐฐ์ด ํํ์ ๋ฐ์ดํฐ๋ฅผ ๋ก์ปฌ ์คํ ๋ฆฌ์ง์ ์ ์ฅํ๋ ค๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋ฌธ์์ด๋ก ๋ณํํด์ผ ํ๋ค
- JSON ๊ฐ์ฒด์๋ ํน์ ๋ฌธ์์ด์ ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด๋ก ๋ณํํ๋ JSON.parse(), ํน์ ๊ฐ์ฒด๋ฅผ JSON ํํ๋ก ๋ณํํ๋ JSON.stringify() ๋ฉ์๋๊ฐ ์๋ค
728x90
๋ฐ์ํ