[JavaScript] ํด๋กœ์ €๋ž€ ๋ฌด์—‡์ธ๊ฐ€?
ยท
Frontend/JavaScript
ํด๋กœ์ € โ“ ํ•จ์ˆ˜์™€ ํ•จ์ˆ˜๊ฐ€ ์„ ์–ธ๋œ ์–ดํœ˜์  ํ™˜๊ฒฝ์˜ ์กฐํ•ฉ ์ด ํ™˜๊ฒฝ์€ ํด๋กœ์ €๊ฐ€ ์ƒ์„ฑ๋œ ์‹œ์ ์˜ ์œ ํšจ ๋ฒ”์œ„ ๋‚ด์— ์žˆ๋Š” ๋ชจ๋“  ์ง€์—ญ ๋ณ€์ˆ˜๋กœ ๊ตฌ์„ฑ๋œ๋‹ค. ์ฆ‰, ๋‚ด๋ถ€ ํ•จ์ˆ˜์—์„œ ์™ธ๋ถ€ ํ•จ์ˆ˜์— ์žˆ๋Š” ์ƒํƒœ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์™œ ์‚ฌ์šฉํ• ๊นŒ โ“ ๋‚ด๋ถ€ ์ •๋ณด๋ฅผ ์€๋‹‰ํ•˜๊ณ , ๊ณต๊ฐœ ํ•จ์ˆ˜(public ๋˜๋Š” ์™ธ๋ถ€)๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์„ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค. (์บก์Šํ™”, ์ •๋ณด์€๋‹‰) ์ „์—ญ๋ณ€์ˆ˜ ๋˜ํ•œ ์ค„์—ฌ์ง€๊ฒŒ ๋˜๋ฏ€๋กœ ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ์‹ค์ˆ˜๋กœ ์ ‘๊ทผํ•˜๋Š” ์ผ์ด ์•ˆ์ƒ๊ธด๋‹ค. ํ˜„์žฌ๋Š” ํด๋ž˜์Šค์—์„œ์˜ private ํ•„๋“œ ๋˜๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. ์–ด๋–ป๊ฒŒ ์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ• ๊นŒ โ“ inner ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ์ด ์™ธ๋ถ€ ๋ ‰์‹œ์ปฌ ํ™˜๊ฒฝ์„ ์ฐธ์กฐํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ํด๋กœ์ €๋ฅผ ์ž˜ ์ดํ•ดํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ๋ณ€์ˆ˜์˜ ์œ ํšจ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•˜๋Š”์ง€(Lexical scoping)๋ฅผ ๋จผ์ € ์ดํ•ดํ•ด์•ผ ํ•œ๋‹ค...
_์„ฑํ˜ธ_
'javascript ํด๋กœ์ €' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก