์ด๋ฒ ํ๋ก์ ํธ์์ ๋น๋์ค๋ ์์ง ๋ฏธ์ ์ด์ง๋ง์ค์๊ฐ ์ฑํ ๊ณผ ์์ฑ์ฑํ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ๋ก ํ์์ต๋๋ค.๊ตฌํ์ด ์๋ฃ ๋์ง ์์์ง๋ง ์์ฑํ ์ฝ๋๋จผ์ ํ์ธํ๊ฒ ์ต๋๋ค!๊ฒ์๋ฐฉ ํ์ด์ง ๋ด์ ์ ์ฅํ ์ ์ ๋ค์ ํ๋กํ์ ํ์ธํ ์ ์๋ ์ ์ ์นด๋ ์ปดํฌ๋ํธ ์ฝ๋์ ๋๋ค ๋ฅผ ์ด์ฉํ์ฌ ์ฌ์ฉ์์ ๋ง์ดํฌ์
์น๋ธ๋ผ์ฐ์ ๋ HTML ๋ฌธ์๋ฅผ ํด์ํ๊ณ ํ๋ฉด์ ํตํด ํด์๋ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ฌ์ค๋ค.ํด์ํ HTML ์ฝ๋๋ฅผ ํ๋ฉด์ ํตํด ๋ณด์ฌ์ฃผ๋ ๊ณผ์ ์ "๋ ๋๋ง" ์ด๋ผ๊ณ ํ๋ค์ด ๋ ๋๋ง ๊ณผ์ ์์ ๋ธ๋ผ์ฐ์ ๋ HTML ์ฝ๋๋ฅผ ํด์ํด์ ์์๋ค์ ํธ๋ฆฌ ํํ๋ก ๊ตฌ์กฐํํด ํํํ๋ ๋ฌธ์(๋ฐ์ดํฐ)๋ฅผ ์์ฑํ๋ฉฐ ์ด
HTML์ ์๋ ๊ฐ ํ๋ค์ ์ฐ๋ฆฌ๋ '์์' (element) ๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.์ด๋ฅผ ์๋ฐ์คํฌ๋ฆฝํธ์์ '๋ฌธ์๊ฐ์ฒด' ๋ผ๊ณ ํจ์ด๋ฌํ ์์, ๋ฌธ์๊ฐ์ฒด๋ฅผ ์กฐํฉํด์ ๋ง๋ ์ ์ฒด์ ์ธ ํํ๋ฅผ ์ฐ๋ฆฌ๋ "DOM" ์ด๋ผ๊ณ ํ๋ค.์์ ์ด๋ฏธ์ง์์ <head>๋ <html>์ ์์์์ ์ด
ECMASCRIPT ์ ์ฝ์ด๋ก ์๋ฐ์คํฌ๋ฆฝํธ์ ํ์ค,๊ท๊ฒฉ์ ๋ํ๋ด๋ ์ฉ์ด์ด๋ค.๋ค์ ์ซ์๋ ๋ฒ์ ์ ๋ปํ๋๋ฐ ES5(2009๋ ) , ES6(20150๋ ) ์ถ์ ํ์๋ค.ES5,ES6 ์ฌ์ด์ 6๋ ์ ์๊ฐ์ฐจ๊ฐ ์๋๋ฐ ๋ง์ ๊ธฐ๋ฅ๋ค์ด ์ถ๊ฐ ๋์์ผ๋ฉฐ์ES6์ด์ var ํค์๋๋ ํจ์๋ ๋ฒจ
์ ์ ๋ฐฐ์ ๋ ์๋ฐ ์ธ์ด์์๋ ๋ณ์๋ฅผ ์ ์ธํ๊ธฐ ์ํด ๋ณ์๋ช ์์ ๋ณ์์ ํ์ ์ ์ง์ ํ๊ณ ๋ณ์์ ๊ฐ์ ํ ๋น ํ์๋๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ ์ธ์ let var const ๋ง ๊ตฌ๋ถํ์ฌ ๊ฐ์ ํ ๋นํ๋ฉด ์๋ง์ ํ์ ์ผ๋ก ๋ณ์๊ฐ ์ ์ธ๋๋ค.์๋ฐ์คํฌ๋ฆฝํธ์์๋ ํฌ๊ฒ ๋๊ฐ์ง์ ํ๋ณํ ๋ฐฉ๋ฒ์ด ์
JSON ๊ฐ์ฒด๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ๋ฐฐ์ด๊ณผ ๊ฐ์ฒด๋ฅผ ํ์ฉํ์ฌ ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ฐ์ฒด์ฒ๋ผ ์๋ฃ๋ฅผ ํํํ๋ ํ์์ด๋ค. JSONํ์์ ๊ท์น๊ฐ์ ํํํ ๋๋ ๋ฌธ์์ด,์ซ์,๋ถ ์๋ฃํ๋ง ์ฌ์ฉ๊ฐ๋ฅ(ํจ์x)๋ฌธ์์ด์ ๋ฐ๋์ ํฐ ๋ฐ์ดํ๋ก ๋ง๋ค์ด์ผํจํค(key)์๋ ๋ฐ๋์ ๋ฐ์ดํ๋ฅผ ๋ถ์ฌ์ผํจ์๋ฐ ์คํฌ๋ฆฝ
์๋ฐ์คํฌ๋ฆฝํธ์ ๊ธฐ๋ณธ ์๋ฃํ์ ๊ฐ์ฒด๋ก ์ ์ธํ๋ ๋ฐฉ๋ฒ์์๊ธฐ๋ณธ์๋ฃํ์ ์์ฑ๊ณผ ๋ฉ์๋๋ฅผ ๊ฐ์ง ์ ์๋ค.๋ค๋ง ์๋ฐ์คํฌ๋ฆฝํธ๋ ์ฌ์ฉ์ ํธ๋ฆฌ์ฑ์ ์ํด ๊ธฐ๋ณธ์๋ฃํ์ ์์ฑ๊ณผ ๋ฉ์๋๋ฅผ ํธ์ถํ ๋์ผ์์ ์ผ๋ก ๊ธฐ๋ณธ ์๋ฃํ์ ๊ฐ์ฒด๋ก ์น๊ธ ์์ผ์ฃผ๋ฉฐ,์ด๋ฌํ ์น๊ธ์ ์ผ์์ ์ด๋ค.prototype๊ฐ์ฒด์ ์
๊ฐ์ฒด๋ ์ถ์์ ์๋ฏธ๋ก ์ ์ํ์๋ฉด '์ค์ ๋ก ์กด์ฌํ๋ ์ฌ๋ฌผ'์ ์๋ฏธํ๋ฉฐ, '์ด๋ฆ'๊ณผ '๊ฐ'์ผ๋ก ๊ตฌ์ฑ๋ ์์ฑ์ ๊ฐ์ง ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ด๋ค๊ฐ์ฒด์ ์ ์ธ์ ์๋์ ๊ฐ๋ค ๊ฐ์ฒด์ ์์์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ์ ํด๋น ๊ฐ์ฒด์ ๋ณ์๋ช 'key' ์ ๋ณ์๋ช .key ์ด๋ค. ๊ฐ์ฒด์ key
์ฝ๋ฐฑํจ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ ํจ์๋ ํ๋์ ์๋ฃํ์ผ๋ก์ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌ ๊ฐ๋ฅํ๋ค. ์ด๋ ๊ฒ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌํ๋ ํจ์๋ฅผ ์ฝ๋ฐฑํจ์๋ผ๊ณ ํ๋ค. ์ฝ๋ฐฑํจ์๋ฅผ ์ด์ฉํ ํจ์ forEach()
ํจ์๊ด๋ จ ์ฉ์ด์ ๋ฆฌ >ํจ์๋ฅผ ์ฌ์ฉํ๋๊ฒ์ -> ํจ์ํธ์ถ, ํจ์๋ฅผ ์ฌ์ฉํ ๋ ๊ดํธ ๋ด๋ถ์ ์ฌ๋ฌ ์๋ฃ๋ฅผ ๋ฃ๋๋ฐ, ์ด๋ฅผ -> ๋งค๊ฐ๋ณ์, ํ๋ผ๋ฏธํฐ, ์ธ์๊ฐ ๋ฑ ์ด๋ผ๊ณ ํ๋ฉฐ ํจ์๋ฅผ ํธ์ถํ์ฌ ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ฐํ๋๋ ๊ฐ์ ๋ฆฌํด๊ฐ ์ด๋ผ๊ณ ํจ ํจ์์ ๊ธฐ๋ณธํํ ํจ์๋ฅผ ์ฝ๋์ ์งํฉ์ด๋ผ ํ๋ ์ด
๋ฐฐ์ด์ ์๋ฃ๋ฅผ ๋ฌถ์ด์ ํ์ฉํ ์ ์๋ ํน์ํ ์๋ฃ์ด๋ค(์ฌ๋ฌ๊ฐ์ ๋ณ์๋ฅผ ํ๋ฒ์ ์ ์ธํด ๋ค๋ฃฐ ์ ์๋ ์๋ฃํ)์์ฑ์ ๋๊ดํธ \[] ๋ฅผ ์ด์ฉํด ์ฌ์ฉํ๊ณ ๋ด๋ถ์ ๊ฐ์ ์ผํ(,)๋ก ๊ตฌ๋ถํด์ ์ ๋ ฅํ๋ค์์ฒ๋ผ ๋ฐฐ์ด์ ์์์๋ ๊ฐ์ ๋ฐฐ์ด์ด ์ค๊ฑฐ๋ ๋ฌธ์์ด, ์ซ์ ,ํจ์ ,๋ถ๋ฆฌ์ธ ๊ฐ๋ ์ฌ์
์กฐ๊ฑด๋ถ ์ฐ์ฐ์์ ๊ธฐ๋ณธ ํํ๋ ์๋์ ๊ฐ๋ค๋ทธ ํํ์ ? ์ฐธ์ผ๋ ๊ฒฐ๊ณผ ๊ฐ : ๊ฑฐ์ง์ผ๋์ ๊ฒฐ๊ณผ ๊ฐ์๋ฐ์คํฌ๋ฆฝํธ์์ ํญ์ 3๊ฐ ๊ฐ๋ ์ฐ์ฐ์๋ ์กฐ๊ฑด๋ถ ์ฐ์ฐ์๊ฐ ์ ์ผ ํ๋ฏ๋ก ์ผํญ์ฐ์ฐ์ ๋ผ๊ณ ๋ ํจ์ฌ์ฉํ ์์ ๋ ์๋์ ๊ฐ๋คconst result = (num >= 0) ? '0์ด์์์'
switch ์กฐ๊ฑด๋ฌธ์ ๊ธฐ๋ณธ ๋ฌธ๋ฒ์ ์๋์ ๊ฐ๋ค >switch(์๋ฃ){ case ์๋ฃ์ ์กฐ๊ฑดA: break case ์๋ฃ์ ์กฐ๊ฑดB: break default: break } ์ฌ๊ธฐ์ default๋ ์๋ต๊ฐ๋ฅ ํ์ฉํ ์์ ๋ ์๋์ ๊ฐ๋ค >let num =3; switc
if๋ฌธ์ ๊ธฐ๋ณธ๋ฌธ๋ฒ์ ์๋์ ๊ฐ๋คif(์กฐ๊ฑด๋ฌธ){ ์กฐ๊ฑด์ด ์ฐธ์ผ ๊ฒฝ์ฐ ์คํํ ๋ฌธ์ฅ}์ฌ๊ธฐ์์ if๋ฌธ์ ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง์ผ ๊ฒฝ์ฐ ์คํํ ๋ฌธ์ฅ์ else๋ฌธ์ ์ถ๊ฐํ์ฌ ํํ ํ ์์๋ค.if(์กฐ๊ฑด๋ฌธ){์กฐ๊ฑด์ด ์ฐธ์ผ๊ฒฝ์ฐ ์คํํ ๋ฌธ์ฅ}else{์กฐ๊ฑด์ด ๊ฑฐ์ง์ผ ๊ฒฝ์ฐ ์คํํ ๋ฌธ์ฅ}์ฌ๊ธฐ์ ์ฒซ๋ฒ์งธ ์กฐ๊ฑด
JavaScript์์ ํธ์ด์คํ (hoisting)์ด๋, ์ธํฐํ๋ฆฌํฐ๊ฐ ๋ณ์์ ํจ์์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ ์ธ ์ ์ ๋ฏธ๋ฆฌ ํ ๋นํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. var๋ก ์ ์ธํ ๋ณ์์ ๊ฒฝ์ฐ ํธ์ด์คํ ์ undefined๋ก ๋ณ์๋ฅผ ์ด๊ธฐํํฉ๋๋ค. ๋ฐ๋ฉด let๊ณผ const๋ก ์ ์ธํ ๋ณ์์ ๊ฒฝ์ฐ
๋ฐ๋ณต๊ฐ๋ฅํ ๊ฐ์ฒด์ ๊ฐ์ ํ๋์ฉ ๊บผ๋ด์ฃผ๋ ๋ฐ๋ณต๋ฌธ์ด๋ค์๋ฐ์ for each๋ฌธ๊ณผ ์ ์ฌํจ์ฌ์ฉ์์ -const persons = '๊ฐ์นํ', 'ํ๊ธธ๋', '๊น์๋ฌด๊ฐ';for (const person of persons) { console.log(person);}// Print
์๋ฐ์คํฌ๋ฆฝํธ์์๋ณ์.includes(๊ฐ)์ผ๋ก ๋ณ์ ๋ด์ ํน์ ๊ฐ์ด ๋ค์ด์๋์ง ํ์ธ ๊ฐ๋ฅํ๋ฐ์ ์์ ์์๋ ๋ฐฐ์ด ๋ณ์ arr ์์dog, cat, zebra๊ฐ ๋ค์ด์์ผ๋์์ ๋๋ true์์ ๋๋ false๊ฐ ๋จ์ด์ง๊ฒ ๋๋ค์ค๋ผํด ๊ฐ์ SQL์ in์ฒ๋ผ์ฌ๋ฌ ๊ฐ ์ค์ ํ๋๊ฐ
์๋ฐ์คํฌ๋ฆฝํธ์์ =, ==, === ์ฐ์ฐ์๊ฐ ์๋๋ฐ= ๋ ๋ณ์์ ๊ฐ์ 'ํ ๋น'ํ ๋ ์ฐ์ด๊ณ == '๊ฐ'์ด ๋์ผํ์ง ๋น๊ตํ๊ณ ===๋ '๊ฐ'๊ณผ '๋ฐ์ดํฐํ์ '์ด ๋ชจ๋ ๊ฐ์์ง ๋น๊ตํ๋๋ฐ ์ฐ์ธ๋ค
์๋ฐ์คํฌ๋ฆฝํธ์์ split์ ์ด์ฉํด์ ๋ฌธ์์ด์ ๋๋ ๋ค ๊ฐ์ฒด ํํ๋ก ๋ฐ๊ฟ ์ ์๋๋ฐsplit์ ๊ฐ.split("๋๋ ๊ธฐ์ค", ์ต๋ ๋๋ ๊ฐฏ์(์์ด๋ ๋จ)) ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋๋ฐ์๋์ ์์ ๋ฅผ ๋ณด๋ฉด ,๋ก ๋๋๋ ๊ฒ ํ๋ํ๋๋จ์ ,๋ก ๋๋๋ฉด์ ์ต๋๊ฐ์ 2๋ฅผ ์คฌ๋๋ฐ์ด ๋ง์ 2
node.js ํ์ฉ -> ํ์ฅ์๋ช ์ js (ex - hello.js) ๋ก ๋ช ์ํด์ฃผ๋ฉด ํด๋น ํ์ผ์ด ์๋ฐ์คํฌ๋ฆฝํธ ์ธ์ด๋ฅผ ์ฌ์ฉํ ํ์ผ์์ ๋ช ์ํด์ค๋ค(์ปดํจํฐ๊ฐ ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ๋ก ์ธ์ํ ์ ์์) ๋ณ์ let, const, var const ํ์ ์ ๊ฒฝ์ฐ์ ํ๋ฒ ๋ฐ์ดํฐ๋ฅผ