key: value ์์ผ๋ก ๊ตฌ์ฑ๋ ํ๋กํผํฐ(property)๋ค์ ์งํฉ์ผ๋ก, ์์ํ(primitive)๊ณผ ๋ค๋ฅด๊ฒ ๋ค์ํ ๋ฐ์ดํฐ๋ฅผ ๋ด์ ์ ์๋ค. ๋ฐฐ์ด๊ณผ ๋ฌ๋ฆฌ ํ๋กํผํฐ๋ฅผ ์ด๊ฑฐํ ๋ ์์๋ฅผ ๋ณด์ฅํ์ง ์๋๋ค.ํ๋กํผํฐ ๋ด ๊ฐ์ผ๋ก ํจ์๋ฅผ ์ฌ์ฉํ ์๋ ์๋๋ฐ, ๊ทธ๋ด ๊ฒฝ์ฐ ์ผ๋ฐ ํจ์
์๋ ์ฝ๋๋ ๋ชจ๋ console ์ฐฝ์ ์ ๋ ฅํ๊ณ ์๋ค๊ณ ๊ฐ์ ํ์.๋์ "๋ฐฐ์ด"์ ๋ชจ\~~๋ ์์๊ฐ ์ฝ๋ฐฑ ํ ์คํธ๋ฅผ ํต๊ณผํ๋์ง ํ์ธํจ.ํ ์คํธ๊ฐ ํ๋๋ผ๋ ํต๊ณผํ์ง ๋ชปํ๊ฒ ๋๋ฉด, ์ดํ ์ฝ๋ฐฑ์ ์คํํ์ง ์๊ณ false ๋ฐํํ๋ค.๋์ "๋ฐฐ์ด"์์ ์ฝ๋ฐฑ ํ ์คํธ๋ฅผ ํต๊ณผํ๋ ๋ชจ๋ ์์๋ก
Number ํ์ค ๋ด์ฅ ๊ฐ์ฒด
์๋ฃํ ์์ํ ์ซ์ํ ์ ์ ๋ฐ ๋ถ๋์์์ ์ซ์ NaN: Not a Number ๋ฌธ์ํ "", '', \\์ผ๋ก ํํ ๊ฐ๋ฅ ๋ถ๋ฆฐ null ๋ช ์์ ์ผ๋ก, ์๋์ ์ผ๋ก ๊ฐ์ด ์์์ ๋งํจ undefined symbol BigInt ๊ธธ์ด ์ ํ์ด ์๋ ์ ์ ์ฐธ์กฐํ ๋ฐฐ์ด ๋ฐฐ์ด์ ์์ดํ
๊ฐ์ฒด ๋ฆฌํฐ๋ด ๋ฐฉ์์ ์ฌ์ฉํด ๊ฐ์ฒด๋ฅผ ์์ฑํ ์ ์๋ค.๊ทธ๋ฐ๋ฐ ๋ง์ฝ ๋น์ทํ ๊ฐ์ฒด๋ฅผ ์ฌ๋ฌ ๊ฐ ๋ง๋ค์ด์ผ ํ๋ ์ํฉ์ด ์จ๋ค๋ฉด ์์ ๊ฐ์ ๊ฐ์ฒด๋ฅผ ํ๋์ฝ๋ฉํด์ผ ํ๋ ๊ฑธ๊น?๋คํํ๋, ๊ทธ๋ฐ ๊ฒฝ์ฐ์ ์์ฑ์ ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.์์ฑ์ ํจ์๋ ์ฝ๊ฒ ์๊ฐํด ๋ถ์ด๋นต ํ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. ์
var, let, const
๋ฌธ์์ด์์ ํน์ ๋ด์ฉ์ ์ฐพ๊ฑฐ๋, ๋์ฒด, ์ถ์ถํ๋ ์ฉ๋๋ก ์ฌ์ฉํ๋ ํจํด.๋ํ์ ์ผ๋ก ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ์ด๋ฉ์ผ, ํด๋ํฐ ๋ฒํธ ๋ฑ์ด ์ฌ๋ฐ๋ฅธ์ง ๊ฒ์ฆํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.๋ฌธ์์ด์์ ํน์ ๋ด์ฉ์ ์ฐพ๊ธฐ ์ํด์ .includes()์ ์ฌ์ฉํ ์๋ ์๋๋ฐ๊ทธ๋ฌ๋ includes()๋ง์ผ๋ก๋
์๋ฒ์ get,post ์์ฒญํ ๋ ์๋ก๊ณ ์นจ ์์ด ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ ์๊ฒ ๋์์ฃผ๋ ๊ฐ๋จํ ๋ธ๋ผ์ฐ์ ๊ธฐ๋ฅajax ์ฌ์ฉํ๋ฉด ์๋ก๊ณ ์นจ ์์ด๋ ์ผํ๋ฌผ ์ํ์ ๋ ๊ฐ์ ธ์ฌ ์ ์๊ณ , ์๋ก๊ณ ์นจ ์์ด๋ ๋๊ธ์ ์๋ฒ๋ก ์ ์กํ ์ ์๊ฒ ๋๋ค.๋ค์ 3๊ฐ ์ค ํ1XLHttpRequest &
๊ตฌ์กฐ๋ถํดํ ๋น๋ฐฐ์ด์ด๋ ๊ฐ์ฒด์ ๊ตฌ์กฐ์ ๋ง๊ฒ ๋ฐ๋ก ๊ฐ๋ณ ๋ณ์์ ๊ฐ์ ํ ๋น์ด๋ค ๋ฐฐ์ด์ด ์๊ณ , ๊ฐ ์์๊ฐ ๋๋ฌด ์ค์ํด์ ๊ฐ ๋ณ์ ์์ ๊ทธ ๊ฐ์ ์ง์ ํ๊ณ ์ถ์ ๋?๋ฌผ๋ก ์ด๋ ๊ฒ ์จ๋ ๋๊ฒ ์ง๋ง, ์์๊ฐ ๋ฐฑ๊ฐ ๋๋ ์๊ฐ ๋ด ์๋ชฉ๋ ๋ ๋ผ๊ฐ๋๊ฑฐ๋ค...๋จธ๋ฆฌ๋ฅผ ์ ์ฐ๋ฉด ๋์ ์์คํ ์๋ชฉ๋ ์ง
๊ธฐ๋ณธ๊ฐ ํจ์ ๋งค๊ฐ๋ณ์ (default function parameter)๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ์ด ์๊ฑฐ๋ undefined๊ฐ ์ ๋ฌ๋ ๊ฒฝ์ฐ ์ด๋ฆ๋ถ์ ๋งค๊ฐ๋ณ์๋ฅผ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ด๊ธฐํํ ์ ์์ต๋๋ค. ๋ผ๊ณ MDN ๋๊ป์ ๋ง์ํ์ ๋ค.ํจ์์ ๋ชจ๋ ํ๋ผ๋ฏธํฐ๋ค์ ์ ๋ถ ํ๊บผ๋ฒ์ ๋๋ ๋ฌถ์ด์ ์ธ์น
์ด๋ ๊ฒํ๋ฉด ๋ณ๊ฒฝ(์ด๋ฆ์ ๋๋ค) ๊ฐ์ผ๋ก 'lee'๋ก ๋ฐ๋.....์ง ์๋๋ค.์??ํ๋ผ๋ฏธํฐ๋ ์ผ์ข ์ ๋ณ์์ฒ๋ผ ์์ฑ๋๊ณ ์ฌ๋ผ์ง๋ ์กด์ฌ๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค. ์ฌ๊ธฐ์ obj ํ๋ผ๋ฏธํฐ ์๋ฆฌ์ ์ด๋ฆ์ ๋๋ค ๋ผ๋ ๋ณ์๋ฅผ ๋ฃ์ผ๋ฉด ๋ณ๊ฒฝ(์ด๋ฆ์ ๋๋ค)๋ผ๋๊ฑด๋ณ๊ฒฝ(let obj=์ด๋ฆ์ ๋๋ค)์ ๊ฐ๋ค๊ณ
๊ทธ๋์ ๋ฏธ๋ค์๋ class, this ๋ฅผ ์ ๋ฆฌํด์ผ์ง, ํด์ผ์ง ํ๋ค๊ฐ ๋๋์ด ์ ๋ฆฌํ๋ ๋ . ์ค๋ธ์ ํธ ๋ณต์ฌํ๊ณ ์ถ๋ ๋น์ทํ object ๋ฅผ ์ฌ๋ฌ ๊ฐ ์ฐ์ด๋ด๊ณ ์ถ์ผ๋ฉด class ๋ฅผ ์ด์ฉํ๋ฉด ๋๋ค. ES6 ์ ๋ฌธ๋ฒ์ด ๋์ค๊ธฐ ์ ์๋ function ํค์๋๋ก ์ด์ฌํ ์ฐ์ด๋๋ค.
๋ฐ๋ณต๋ฌธ์ ๋ํ์ ์ธ for๋ฌธ. ์ด์ธ์๋ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ ์ ์๋ ๋ค๋ฅธ ๋ฐ๋ณต๋ฌธ๋ค๋ ์๋๋ฐ, ๋ฐ๋ก for in / for of ๋ค. ์๋์ ๋ฐ๋ณต๋ฌธ๋ค์ ์์์ ๋ณธ for๋ฌธ์ฒ๋ผ ์ฝ๋๋ฅผ ์ฌ๋ฌ๋ฒ ์คํํ ๋ ์ฌ์ฉํ๊ธฐ๋ ํ์ง๋ง, array๋ object์์ ์๋ฃ๋ฅผ ๊บผ
์ฝ๋ฐฑํจ์ ์คํํ๋ ๋ฒ.ํ๋ผ๋ฏธํฐ์์ ํจ์๋ช /ํจ์์ ์ธ ๋ฃ์ด์ฃผ๊ณ 1๋ฒ์ผ๋ก ์คํํ ํจ์ {}์์ 2๋ฒ์ผ๋ก ์คํํ ํจ์() ๋ฃ์ด์ค.๊ทธ๋ฆฌ๊ณ 1๋ฒ ํจ์ ํธ์ถํ์ . ์ด๊ฑด ์ดํด๊ณ ์์๊ณ ๊ทธ๋ฅ ์ธ์ฐ๋ฉด ๋จ.์ฒซ์งธํจ์(๋์งธํจ์)์ฒ๋ผ ํจ์๋ช ์ ๋ฃ์ด์ค๋ ๋๊ณ ์๋๋ฉด์ด๋ ๊ฒ ํ๋ผ๋ฏธํฐ ์์์ ์์ ํจ
Promise ๊ฐ์ฒด >์๋ฐ์คํฌ๋ฆฝํธ์์ ์ ๊ณตํ๋, ๋น๋๊ธฐ๋ฅผ ๊ฐํธํ๊ฒ ์ฒ๋ฆฌํ ์ ์๋๋ก ๋์์ฃผ๋ ๊ฐ์ฒด ์ฝ๋ฐฑ๊ณผ ๋ฌ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ผ๋ก ๋ฐ์์ ์ ์ฅํ ์ ์๋ค. ๊ฒฐ๊ณผ ๊ทธ ์์ฒด๋ฅผ ๊ฐ์ผ๋ก ๋ฐ๊ธฐ์, ์ฐ์์ผ๋ก ์คํํ๋ ์ฝ๋์์๋ callback๋ณด๋ค ๊ฐ๋ ์ฑ ์๋ ์ฝ๋๊ฐ ๊ฐ๋ฅํ๋ค. ์ฃผ๋ก
๋ชจ๋ DOM ๋ ธ๋๋ click, focus, keydown ๋ฑ ์ฌ์ฉ์์์ ์ํธ์์ฉ์ ๋ฐ๋ผ event๋ผ๋ ์ ํธ๋ฅผ ๋ฐ์์ํจ๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ฌํ ์ด๋ฒคํธ ๋ฐ์์ ๋ฐ๋ผ ์คํ๋ ํจ์๋ฅผ ์ค์ ํ๋ ๊ฒ์ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ํ ๋นํ๋ค๊ณ ํ๋ค.๋ธ๋ผ์ฐ์ ์์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ์ ๋ ์์ฑ๋๋, ์ด๋ฒค