[JavaScript] ํด๋ก์ ๋ ๋ฌด์์ธ๊ฐ?
ยท
Frontend/JavaScript
ํด๋ก์ โ ํจ์์ ํจ์๊ฐ ์ ์ธ๋ ์ดํ์ ํ๊ฒฝ์ ์กฐํฉ ์ด ํ๊ฒฝ์ ํด๋ก์ ๊ฐ ์์ฑ๋ ์์ ์ ์ ํจ ๋ฒ์ ๋ด์ ์๋ ๋ชจ๋ ์ง์ญ ๋ณ์๋ก ๊ตฌ์ฑ๋๋ค. ์ฆ, ๋ด๋ถ ํจ์์์ ์ธ๋ถ ํจ์์ ์๋ ์ํ์ ์ ๊ทผํ ์ ์๋ ๊ถํ์ ๋ถ์ฌํ๋ค๋ ๊ฒ์ด๋ค. ์ ์ฌ์ฉํ ๊น โ ๋ด๋ถ ์ ๋ณด๋ฅผ ์๋ํ๊ณ , ๊ณต๊ฐ ํจ์(public ๋๋ ์ธ๋ถ)๋ฅผ ํตํ ๋ฐ์ดํฐ ์กฐ์์ ์ํด ์ฌ์ฉํ๋ค. (์บก์ํ, ์ ๋ณด์๋) ์ ์ญ๋ณ์ ๋ํ ์ค์ฌ์ง๊ฒ ๋๋ฏ๋ก ๊ฐ๋ฐ ๊ณผ์ ์์ ์ค์๋ก ์ ๊ทผํ๋ ์ผ์ด ์์๊ธด๋ค. ํ์ฌ๋ ํด๋์ค์์์ private ํ๋ ๋๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค. ์ด๋ป๊ฒ ์ด๊ฒ์ด ๊ฐ๋ฅํ ๊น โ inner ๋ ์์ปฌ ํ๊ฒฝ์ด ์ธ๋ถ ๋ ์์ปฌ ํ๊ฒฝ์ ์ฐธ์กฐํ๊ณ ์๊ธฐ ๋๋ฌธ์ด๋ค. ํด๋ก์ ๋ฅผ ์ ์ดํดํ๋ ค๋ฉด ์ด๋ป๊ฒ ๋ณ์์ ์ ํจ๋ฒ์๋ฅผ ์ง์ ํ๋์ง(Lexical scoping)๋ฅผ ๋จผ์ ์ดํดํด์ผ ํ๋ค...