ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ๋ฅผ ํ๋ฉด์ ๋ชฐ๋๋ ๋๋ฅผ ๋ฐ์ฑํ๋ฉฐ ๊ธ์ ์จ๋ณธ๋ค.. ๋ก๋์ ์ต๊ณ ์์์ ์ต์ ์์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์๋๋ฐ ๊ฒฐ๊ณผ๊ฐ์ ๊ตฌํ๋ ์ค์ ๊ฐ์ด ๊ณ์ 0 ์ด ๋์๋ค. > {}๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ > ์ด๋ ๊ฒ return ์ ๋ถ์ฌ์ฃผ๋๊ฒ์ด ๋ง๊ณ {} ๋ฅผ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ
if๋ฌธ์ด ์ฌ๋ฌ๊ฐ๋ก ๋์ด๋๋ฉด์ ๋ณต์กํด์ง๊ณ ์ฝ๋์์ด ๋ง์์ ธ์ switch ๋ฌธ์ผ๋ก ๋ฆฌํํ ๋ง์ ํ๋ค.switch ๋ฌธ์ผ๋ก ๋ณ๊ฒฝํ๋ ํจ์ฌ ๋ณด๊ธฐ๋ ์ข๊ณ if๋ฌธ ๋ณด๋ค ๊ดํธ๋ ์ ๋ฆฌ๋ ๋ชจ์ต์ด๋ค.
ES6 Arrow function
๊ฐ๋จํ๊ฒ ๋งํ๋ฉด ์์, ์ ์ ์ ๋ผ๊ณ ์๊ฐํ๋ฉด ๋ ๊ฒ ๊ฐ๋ค.ํ๋กํ ํ์ ์ด๋ผ๋ ๊ณต๊ฐ์ด ์๊ธฐ๊ฒ ๋๋ค์ค๋ธ์ ํธ(Object) ์ด๋ค machine ์ prototype(์ ์ ์) ์ gender ํญ๋ชฉ์ ์ถ๊ฐํ๋ฉด ๋ชจ๋ ์์๋ค์ด ๋ฌผ๋ ค๋ฐ์ ์ ์๋ค!ํ์1, ํ์2 ๋ machine ๋ก๋ถํฐ
2010 ๋ ๋ถํฐ Prototype ๋ก ๊ตฌํํ์ง ์๊ณ ES5 ๋ฐฉ์์ผ๋ก ์์์ ์งง๊ณ ์ฝ๊ฒ ๊ตฌํ ํ๊ฒ ๋์๋ค. Object.create(ํ๋กํ ํ์ object) ๋ก ์์ ๊ธฐ๋ฅ ๊ตฌํ ๊ฐ๋ฅ์์์ ์์๋ ๋ง๋ค ์ ์๋ค.console.log(์์.age); //๊ฒฐ๊ณผ๊ฐ 20 ์์์
๋ณต์กํ ์๊ด๊ณ ๋ณด๊ธฐ ๋ถํธํ๋ค๋ฉด ๊ฐ์ฒด ์์ ํจ์ ์์ set / get ๋ถ์ฌ์ค ์ฌ๋.setAge = 20๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํจ ๋ฐ๋ ๊ฐ params ๊ฐ 1๊ฐ ์์ด์ผ ํจ ๋ฐ์ดํฐ๋ฅผ ๊บผ๋ด์getter return ์ด ์์ด์ผํจ
์น๋ธ๋ผ์ฐ์ ๋ ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ html ๋ก ๋ณผ ์ ์๊ฒ ํ๋ ์์ง๊ทธ๋ ๋ค๋ฉด Javascript ์ฝ๋๋ ์ด๋ป๊ฒ ๋์์ ํ ๊น์๋ฐ์คํฌ๋ฆฝํธ๋ ์ฝ๋๋ฅผ ํ๋ฒ์ ํ์ค์ฉ ์คํ(๋๊ธฐ์ )์ ํ๋ค. ํ๋ฒ์ ์ฝ๋ ํ๋๋ฐ์ ์คํ์ ๋ชปํ๋ค.์ด ์ฝ๋์์ ์ถ๋ ฅ๊ฒฐ๊ณผ๋ 1,2,3 ์ผ๋ก ์ถ๋ ฅ์ด ๋๋ค
Map key : value ๋ก ์ด๋ฃจ์ด์ง Object ํ์๊ณผ ๋น์ทํ๊ฒ ์ ์ฅ ํ ์ ์๋ค๋ฐฉ๋ฒ์ด ์ฝ๊ฐ ๋ค๋ฅด๋ค์ ์ธ ๋จผ์ ํ๊ณ ์๋ฃ๋ฅผ set ํจ์๋ก ์ ์ฅ !ํํ๋๋ ๋ฐฉ์์ด ๋ค๋ฅด๋ค (์ค๊ดํธ๋ก)์ฝ๋ก ๊ธฐํธ๊ฐ ์๊ณ ! ํ์ดํ ๊ธฐํธ๊ฐ ์๋ค.Map ์๋ฃํ์ ์๋ฃ์ ์ฐ๊ด์ฑ์ ํํํ๊ธฐ ์ํด
์ค๋ณต๋๋ html ํ๊ทธ๋ค, ๋ค๋ฅธํ์ด์ง์์ ์ฌํ์ฉ์ ํ๊ณ ์ถ์ ๋ ์ฝ๋ ์ค์ด๊ธฐ ์ถ์ฝํ html ๋ค ๋ฃ์ด์ค์ผ ํ๋๋ฐ class ํํ๋ก ์ง์ด๋ฃ์ด์ผํจ์ฌ๊ธฐ์ this ๋ ? class ๋ก ๋ถํฐ ์์ฑ๋ ์ธ์คํด์ค ์ฆ, ์์ฑ ๋ custom html(custom-input) ๋ผ๊ณ
html ์ง๋ค ๋ณด๋ฉด ๋ณต์กํ html ์ฝ๋๋ค์ด ๋ง๋ค. ๊ฒ์ผ๋ก๋ ํ๋์ DOM ์ฒ๋ผ ๋ณด์ด์ง๋ง ์์ DOM ๋ค์ด ๋ง์ด ๋ค์ด ์์ HTML ์ฝ๋๊ฐ ๊ฐ๊ฒฐ, ๊ฐ์ง๋์๊ฐ์ง๋์๊ฐ์ง๋์๊ฐ์ง๋์Web Components + shadow DOM = ์๋ฒฝํ ๋ชจ๋ํ ๊ฐ๋ฅํ๊ฒฝ์ค์ - ์์ -