[JavaScript] ์Šค์ฝ”ํ”„(Scope)๋ž€ ๋ฌด์—‡์ธ๊ฐ€?
ยท
Frontend/JavaScript
์Šค์ฝ”ํ”„(Scope) โ“ 1๏ธโƒฃ ๋ณ€์ˆ˜๋ฅผ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋Š” ์œ ํšจ ๋ฒ”์œ„ 2๏ธโƒฃ ์‹๋ณ„์ž(๋ณ€์ˆ˜, ํ•จ์ˆ˜, ํด๋ž˜์Šค ์ด๋ฆ„) ์ ‘๊ทผ ๊ทœ์น™์— ๋”ฐ๋ฅธ ์œ ํšจ ๋ฒ”์œ„ ๋ฒ”์œ„(์Šค์ฝ”ํ”„)๋Š” ์ค‘๊ด„ํ˜ธ(๋ธ”๋ก) ๋˜๋Š” ํ•จ์ˆ˜์— ์˜ํ•ด ๋‚˜๋ˆ ์ง„๋‹ค. ์Šค์ฝ”ํ”„์˜ ์ฃผ์š” ๊ทœ์น™ โ— ๐Ÿ‘‰ ๊ทœ์น™ 1. ๋ธ”๋Ÿญ ์•ˆ์˜ ๋ณ€์ˆ˜๋Š” ๋ธ”๋Ÿญ ์•ˆ์—์„œ๋งŒ ์œ ํšจํ•˜๋‹ค. ๋ฐ”๊นฅ์ชฝ ์Šค์ฝ”ํ”„์—์„œ ์„ ์–ธํ•œ ์‹๋ณ„์ž๋Š” ์•ˆ์ชฝ ์Šค์ฝ”ํ”„์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ๋ฐ˜๋ฉด, ์•ˆ์ชฝ์—์„œ ์„ ์–ธํ•œ ์‹๋ณ„์ž๋Š” ๋ฐ”๊นฅ์ชฝ ์Šค์ฝ”ํ”„์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ โŒ ๋ธ”๋Ÿญ ๋‚ด๋ถ€์—์„œ๋งŒ ์กด์žฌํ•˜๊ณ , ๋ธ”๋Ÿญ์ด ๋๋‚˜๋ฉด ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ(GC)์— ์˜ํ•ด ์ž๋™์œผ๋กœ ์†Œ๋ฉธ๋œ๋‹ค. const a = 1; { const b = 2; console.log(a); } console.log(b); // ์˜ค๋ฅ˜ ๋ฐœ์ƒ(app crashed) ๐Ÿ‘‰ ๊ทœ์น™ 2. ์ „์—ญ ์Šค์ฝ”ํ”„ vs ์ง€์—ญ ์Šค์ฝ”ํ”„ ๊ฐ€์žฅ ๋ฐ”๊นฅ์ชฝ์˜ ์Šค์ฝ”ํ”„๋ฅผ ์ „..
_์„ฑํ˜ธ_
'javascript scope' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก