Search
Duplicate

Scope

νƒœκ·Έ
scope
Global Scope
block 밖에 μ‘΄μž¬ν•˜λŠ” λ³€μˆ˜λ“€μ„ λ§ν•œλ‹€. block 밖에 있기 λ•Œλ¬Έμ— μ–΄λ– ν•œ μ½”λ“œλ“  μ „λΆ€ 접근이 κ°€λŠ₯ν•˜λ‹€.
Block Scope
local λ³€μˆ˜λΌκ³ λ„ 뢈리우며, block μ•ˆμ— μ‘΄μž¬ν•˜λŠ” λ³€μˆ˜λ“€μ„ λ§ν•œλ‹€. 였직 {} μ•ˆμ— μžˆλŠ” μ½”λ“œμ—λ§Œ 접근이 κ°€λŠ₯ν•˜λ‹€.
const logSkyColor = () => { let color = 'blue'; console.log(color); // Prints "blue" }; logSkyColor(); // Prints "blue" console.log(color); // throws a ReferenceError
JavaScript
볡사
Scope Pollution
μ „μ—­ λ³€μˆ˜κ°€ λ§Žκ±°λ‚˜, 지역 λ³€μˆ˜μ™€ μ „μ—­ λ³€μˆ˜μ˜ λ³€μˆ˜λͺ…이 κ²ΉμΉœλ‹€λ©΄ Scope Pollution 이 λ°œμƒν•  수 μžˆλ‹€.
let num = 50; const logNum = () => { num = 100; // Take note of this line of code console.log(num); }; logNum(); // Prints 100 console.log(num); // Prints 100
JavaScript
볡사
ν•¨μˆ˜μ•ˆμ—μ„œ λ³€μˆ˜λ₯Ό μž¬μ •μ˜ ν• λ•ŒλŠ” λ³€μˆ˜νƒ€μž…μ„ 뢙이지 μ•ŠλŠ”λ‹€.
Practice Good Scoping
const logSkyColor = () => { const dusk = true; let color = 'blue'; if (dusk) { let color = 'pink'; console.log(color); // Prints "pink" } console.log(color); // Prints "blue" }; console.log(color); // throws a ReferenceError
JavaScript
볡사