관리 메뉴

Hey Tech

[JavaScript] var vs let 차이점 μ„€λͺ… λ³Έλ¬Έ

SW 개발/Vanilla JS

[JavaScript] var vs let 차이점 μ„€λͺ…

Tony Park (ν† λ‹ˆ) 2021. 12. 1. 10:09
728x90
λ°˜μ‘ν˜•

πŸ’‘ ν•™μŠ΅ λͺ©ν‘œ

μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œ var νƒ€μž…κ³Ό let νƒ€μž… κ°„μ˜ 차이점을 μ΄ν•΄ν•œλ‹€.

차이점 1. λ³€μˆ˜ μž¬μ„ μ–Έ κ°€λŠ₯μ—¬λΆ€

첫 번째 차이점은 λ³€μˆ˜ μž¬μ„ μ–Έ κ°€λŠ₯μ—¬λΆ€μž…λ‹ˆλ‹€.

var νƒ€μž…μ€ λ³€μˆ˜ μ„ μ–Έ 이후에 같은 λ³€μˆ˜λͺ…μœΌλ‘œ μž¬μ„ μ–Έμ΄ κ°€λŠ₯ν•˜μ§€λ§Œ,

let νƒ€μž…μ€ λ³€μˆ˜ μ„ μ–Έ 이후에 같은 λ³€μˆ˜λͺ…μœΌλ‘œ μž¬μ„ μ–Έμ΄ λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€.

var show = 10;
console.log(typeof(show));
var show = "코끼리";
console.log(typeof(show));

let same = 30;
same = "λ…μˆ˜λ¦¬";

차이점 2.  지역성 μœ μ§€μ—¬λΆ€

두 번째 차이점은 지역성 μœ μ§€μ—¬λΆ€μž…λ‹ˆλ‹€.

var νƒ€μž…μ€ 지역성을 μœ μ§€ν•˜μ§€ μ•Šμ•„ λͺ¨λ“  λ³€μˆ˜λ₯Ό μ „μ—­ λ³€μˆ˜λ‘œ μ‚¬μš©ν•  수 μžˆλŠ” 반면,

let νƒ€μž…μ€ 지역성을 μœ μ§€ν•˜κΈ° λ•Œλ¬Έμ— μ§€μ—­λ³€μˆ˜λ‘œ μ‚¬μš©λ  수 μžˆμŠ΅λ‹ˆλ‹€.

μ•„λž˜ μ˜ˆμ‹œ μ½”λ“œλ₯Ό μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

{
    let n1 = "n1";
    var n2 = "n2";
}

console.log(n1); // μ—λŸ¬ λ°œμƒ
console.log(n2); // n2 좜λ ₯

κ΄„ν˜Έ μ•ˆμ— let νƒ€μž…μ„ μ„ μ–Έν•œ λ³€μˆ˜λŠ” κ΄„ν˜Έ λ°–μ—μ„œ 호좜이 λΆˆκ°€λŠ₯ν•˜μ§€λ§Œ,

var νƒ€μž…μœΌλ‘œ μ„ μ–Έν•œ λ³€μˆ˜λŠ” κ΄„ν˜Έ λ°–μ—μ„œλ„ 호좜이 κ°€λŠ₯ν•©λ‹ˆλ‹€.


ν¬μŠ€νŒ… λ‚΄μš©μ— 였λ₯˜κ°€ μžˆλ‹€λ©΄ μ•„λž˜μ— λŒ“κΈ€ λ‚¨κ²¨μ£Όμ„Έμš”!

그럼 μ˜€λŠ˜λ„ 즐겁고 κ±΄κ°•ν•œ ν•˜λ£¨ λ³΄λ‚΄μ‹œκΈΈ λ°”λžλ‹ˆλ‹€.

κ³ λ§™μŠ΅λ‹ˆλ‹€ :-)

728x90
λ°˜μ‘ν˜•