2021-01-07(Thu)
Last updated
Last updated
Modern JavaScript ํํ ๋ฆฌ์ผ์ ์ถ๊ฐ๋ก ํ์ต์งํํ์๋ค.
ํ์ตํ ๋ด์ฉ์ด ๋๋ฌด ๋ง์์ ๋ค ๊ธ๋ก ์ฎ๊ธฐ์ง ์์๊ณ (์ฌ์ค ์๋ฏธ๋ ํฌ์ง ์๊ณ ) ๊ทธ ์ค ํด๋ก์ ์ ๋ํ ๋ด์ฉ์ด ํฅ๋ฏธ๋ก์์ ํํ ๋ฆฌ์ผ ๋ด์ ์๋ ๋ด์ฉ ์ธ์๋ ๋ ํ๊ณ ๋ค์ด ํ์ตํ๋ค.
'ํด๋ก์ (closure)'๋ ๊ฐ๋ฐ์๋ผ๋ฉด ์๊ณ ์์ด์ผํ ํ๋ก๊ทธ๋๋ฐ ์ฉ์ด์ ๋๋ค.
ํด๋ก์ ๋ ์ธ๋ถ ๋ณ์๋ฅผ ๊ธฐ์ตํ๊ณ ์ด ์ธ๋ถ ๋ณ์์ ์ ๊ทผํ ์ ์๋ ํจ์๋ฅผ ์๋ฏธํฉ๋๋ค.๋ด๋ถํจ์์ ์ธ๋ถํจ์์ ๊ด๊ณ๋ฅผ ํตํด ํด๋ก์ ๋ฅผ ์ค๋ช ํ์๋ฉด, ๋ด๋ถํจ์๊ฐ ์ธ๋ถํจ์์ ์ง์ญ๋ณ์์ ์ ๊ทผํ ์ ์๊ณ , ์ธ๋ถํจ์๋ ์ธ๋ถํจ์์ ์ง์ญ๋ณ์๋ฅผ ์ฌ์ฉํ๋ ๋ด๋ถํจ์๊ฐ ์๋ฉธ๋ ๋๊น์ง ์๋ฉธ๋์ง ์๋ ํน์ฑ์ ์๋ฏธํฉ๋๋ค.
๋ช๋ช ์ธ์ด์์ ํด๋ก์ ๋ฅผ ๊ตฌํํ๋๊ฒ ๋ถ๊ฐ๋ฅํ๊ฑฐ๋ ํน์ํ ๋ฐฉ์์ผ๋ก ํจ์๋ฅผ ์์ฑํด์ผ ํด๋ก์ ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ํ์ง๋ง ์๋ฐ์คํฌ๋ฆฝํธ์์ ํ ๊ฐ์ง ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณค ๋ชจ๋ ํจ์๊ฐ ์์ฐ์ค๋ฝ๊ฒ ํด๋ก์ ๊ฐ ๋ฉ๋๋ค. ๋ฐ๋ก new Function
๋ฌธ๋ฒ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์ธ๋ฐ ์ด๋ ๋ฐ์์ ๋ค์ ๋ค๋ฃจ๊ฒ ์ต๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ์ ํจ์๋ ์จ๊น ํ๋กํผํฐ์ธ [[Environment]]
๋ฅผ ์ด์ฉํด ์์ ์ด ์ด๋์ ๋ง๋ค์ด์ก๋์ง๋ฅผ ๊ธฐ์ตํฉ๋๋ค. ํจ์ ๋ด๋ถ์ ์ฝ๋๋ [[Environment]]
๋ฅผ ์ฌ์ฉํด ์ธ๋ถ ๋ณ์์ ์ ๊ทผํฉ๋๋ค.
ํจ์ ํธ์ถ์ด ๋๋๋ฉด ํจ์์ ๋์ํ๋ ๋ ์์ปฌ ํ๊ฒฝ์ด ๋ฉ๋ชจ๋ฆฌ์์ ์ ๊ฑฐ๋ฉ๋๋ค. ํจ์์ ๊ด๋ จ๋ ๋ณ์๋ค์ ์ด ๋ ๋ชจ๋ ์ฌ๋ผ์ง์ฃ . ํจ์ ํธ์ถ์ด ๋๋๋ฉด ๊ด๋ จ ๋ณ์๋ฅผ ์ฐธ์กฐํ ์ ์๋ ์ด์ ๊ฐ ๋ฐ๋ก ์ฌ๊ธฐ ์์ต๋๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์ ๋ชจ๋ ๊ฐ์ฒด๋ ๋๋ฌ ๊ฐ๋ฅํ ์ํ์ผ ๋๋ง ๋ฉ๋ชจ๋ฆฌ์ ์ ์ง๋ฉ๋๋ค.
๊ทธ๋ฐ๋ฐ ํธ์ถ์ด ๋๋ ํ์๋ ์ฌ์ ํ ๋๋ฌ ๊ฐ๋ฅํ ์ค์ฒฉ ํจ์๊ฐ ์์ ์ ์์ต๋๋ค. ์ด ๋๋ ์ด ์ค์ฒฉํจ์์ [[Environment]]
ํ๋กํผํฐ์ ์ธ๋ถ ํจ์ ๋ ์์ปฌ ํ๊ฒฝ์ ๋ํ ์ ๋ณด๊ฐ ์ ์ฅ๋ฉ๋๋ค. ๋๋ฌ ๊ฐ๋ฅํ ์ํ๊ฐ ๋๋ ๊ฒ์ด์ฃ .
ํจ์ ํธ์ถ์ ๋๋ฌ์ง๋ง ๋ ์์ปฌ ํ๊ฒฝ์ด ๋ฉ๋ชจ๋ฆฌ์ ์ ์ง๋๋ ์ด์ ๋ ๋ฐ๋ก ์ด ๊ฒ์ ๋๋ค.
ํด๋ก์ ๋ ํจ์ ํ๋กํผํฐ๋ก ๋์ฒดํ ์ ์์ต๋๋ค. ๊ฐ์ฒด๋ก์์ ํจ์์ ๊ธฐ๋ช ํจ์ ํํ์
ํ์ง๋ง ํด๋ก์ ๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ์ ์ธ๋ถ ์ฝ๋์์ count
์ ์ ๊ทผํ ์ ์๊ณ , ์ค์ง ์ค์ฒฉํจ์ ๋ด์์๋ง count
๊ฐ์ ์์ ํ ์ ์์ต๋๋ค. ๋ฐ๋ฉด ํจ์ ํ๋กํผํฐ๋ฅผ ์ฌ์ฉํด count
๋ฅผ ํจ์์ ๋ฐ์ธ๋ฉ์ํจ ๊ฒฝ์ฐ์ ์ธ๋ถ์์ ๊ฐ์ ์์ ํ ์ ์์ต๋๋ค.
๋ฐ๋ผ์ ์ ์๋ ์์ private ๋ณ์์ฒ๋ผ ๊ฐ์ ์๋ํด์ผํ ๋ ์ฐ๋ฉด ์ ์ ํฉ๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ์๊ฐ๋ณด๋ค ์ฌ๋ฐ๋ ๊ฐ๋ ์ด ๋ง๋ค์. ๋ค๋ง, ์คํ ์ปจํ ์คํธ, ๋ ์์ปฌ ํ๊ฒฝ, ํด๋ก์ ๊ฐ์ ๊ฐ๋ ๋ค์ ๋จธ๋ฆฌ์ ๋ฃ๋๋ผ๋ ๋๋ฌด ์ธ์ธํ ๋ฉ์๋์ ์ฌ์ฉ๋ฐฉ๋ฒ ๊ฐ์ ๊ฒ๋ค์ ์ต๋ํ ๊ฑธ๋ฌ์ ํ์ต์๋๋ฅผ ๋์ฌ์ผ๊ฒ ์ต๋๋ค. ์ด์ฐ ํ์ตํ ๊ฒ ๋๋ฌด ๋ง๋ค์..
๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ ํํ ๋ฆฌ์ผ ์ ์ด๋ Part 2๋ ๋ค ํ๊ธฐ
ํญ๋ชฉ
๋ด์ฉ
ํ์ต ๋ ์ง
2021-01-07(๋ชฉ)
ํ์ต ์๊ฐ
09:00~23:00
ํ์ต ๋ฒ์ ๋ฐ ์ฃผ์
javascript ES6
ํ์ต ๋ชฉํ
๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ ํํ ๋ฆฌ์ผ์ Part 1์ ํ๋๋ค.
๋๋ฃ ํ์ต ๋ฐฉ๋ฒ
eunhkim, jujeong, sanam, yohlee ๋๊ณผ ๋์ค์ฝ๋๋ฅผ ์ผ๋๊ณ ํ์ตํ์๋ค.