ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JavaScript/ES6] const ν‚€μ›Œλ“œ
    javascript 2019. 5. 7. 21:27

     

    μ•ˆλ…•ν•˜μ„Έμš”, Jerryμž…λ‹ˆλ‹€ :)

     

    μ§€κΈˆκΉŒμ§€ let ν‚€μ›Œλ“œμ— λŒ€ν•΄ λ§Žμ€ 이야기λ₯Ό ν–ˆμŠ΅λ‹ˆλ‹€. var ν‚€μ›Œλ“œλ„ 같이 ν–ˆμ—ˆμ£ . ν•˜μ§€λ§Œ ES6μ—λŠ” 이 두 ν‚€μ›Œλ“œ 외에도 ν•˜λ‚˜κ°€ 더 μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ 'const ν‚€μ›Œλ“œ'μž…λ‹ˆλ‹€.

     

    const ν‚€μ›Œλ“œλŠ” λ³€μˆ˜μ— ν• λ‹Ήλœ 값을 λ³€κ²½ν•  수 μ—†μŠ΅λ‹ˆλ‹€. 즉, ν• λ‹Ήλœ 값은 μƒμˆ˜κ°€ λ©λ‹ˆλ‹€.

     

    let ν‚€μ›Œλ“œ λ•Œ μ„€λͺ…을 λͺ» λ“œλ¦° 것이 μžˆλŠ”λ°, const ν‚€μ›Œλ“œμ™€ ν•¨κ»˜ 짚고 λ„˜μ–΄κ°€κ² μŠ΅λ‹ˆλ‹€.

    λ³€μˆ˜μ— 값을 ν• λ‹Ήν•  λ•Œ 콀마( , )λ₯Ό μ‚¬μš©ν•˜μ—¬ ꡬ뢄 짓고 ν• λ‹Ήν•  수 μžˆμŠ΅λ‹ˆλ‹€. 밑에 캑처λ₯Ό λ³΄μ‹œλ©΄ λ°”λ‘œ 이해가 λ˜μ‹€ κ²λ‹ˆλ‹€.

     

    λ³€μˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™”(ν• λ‹Ή)μ‹œ μ—°μ†μ μœΌλ‘œ ν• λ‹Ήν•  수 μžˆλ‹€.

     

    λ‹€λ§Œ, const ν‚€μ›Œλ“œμ˜ 경우 λ³€μˆ˜λ₯Ό μ„ μ–Έλ§Œ ν•  수 μ—†κ³  μ΄ˆκΉƒκ°’μ„ μ„€μ •ν•΄μ•Ό ν•©λ‹ˆλ‹€. 이것도 μ•„λž˜ 캑처λ₯Ό λ³΄μ‹œμ£ .

     

    'const(μƒμˆ˜) μ„ μ–Έμ—μ„œ μ΄ˆκΈ°κ°’(initializer)이 λˆ„λ½λ˜μ—ˆλ‹€.'λŠ” μ—λŸ¬λ©”μ‹œμ§€μ΄λ‹€.

     

    그리고 const ν‚€μ›Œλ“œμ˜ scope(λ²”μœ„, μŠ€μ½”ν”„)λŠ” let ν‚€μ›Œλ“œμ™€ λ™μΌν•©λ‹ˆλ‹€. 값을 λ³€κ²½ν•  수 μ—†λ‹€λŠ” 점을 λΉΌκ³ λŠ” λ™μΌν•˜λ„€μš”. 또, 우린 κ΄€λ‘€μ μœΌλ‘œ μƒμˆ˜μ˜ 경우 λŒ€λ¬Έμžλ‘œ λ³€μˆ˜λ₯Ό μ„ μ–Έν•©λ‹ˆλ‹€. 이건 비단 Javascriptμ—λ§Œ κ΅­ν•œλœ κ΄€λ‘€λŠ” μ•„λ‹ˆκ³  Java, C λ“± λ§Žμ€ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄μ˜ 관둀이죠.

     

    ES6μ—μ„œμ˜ const ν‚€μ›Œλ“œλŠ” μƒμˆ˜λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. κ·Έλž˜μ„œ ꡳ이 λŒ€λ¬Έμžλ‘œ ν‘œκΈ°λ₯Ό ν•˜μ§€ μ•Šμ•„λ„ const ν‚€μ›Œλ“œλ‘œ μ„ μ–Έλœ λ³€μˆ˜λ₯Ό μƒμˆ˜λΌκ³  λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. λŒ€λ¬Έμžλ‘œ 선언해도 λ¬΄κ΄€ν•˜κ³ , μ†Œλ¬Έμžλ‘œ 선언해도 μ—λŸ¬κ°€ μ•„λ‹™λ‹ˆλ‹€. μ•„λž˜ 캑처λ₯Ό λ³΄μ‹€κΉŒμš”?

     

    관둀적인 것일 뿐, μ—λŸ¬λ₯Ό 내뱉진 μ•ŠλŠ”λ‹€.

     

     

    const

     

    ν¬μŠ€νŒ…μ„ μ‹œμž‘ν•˜μžλ§ˆμž const ν‚€μ›Œλ“œμ˜ νŠΉμ§•μ„ μ„€λͺ…λ“œλ ΈμŠ΅λ‹ˆλ‹€. const ν‚€μ›Œλ“œλŠ” ν• λ‹Ήλœ 값을 λ³€κ²½ν•  수 μ—†λ‹€κ³  λ§μ”€λ“œλ Έμ£ ? 확인을 ν•΄λ³΄κ³ μž ν•©λ‹ˆλ‹€. μ•„λž˜ μ½”λ“œλ₯Ό ν™•μΈν•΄λ³΄μ„Έμš”.

     

    
    const SPORTS = '좕ꡬ';
    
    try {
      SPORTS = '농ꡬ';
    } catch (e) {
      console.log('const μž¬ν• λ‹Ή λΆˆκ°€');
    }
    

     

    첫 쀄에 const ν‚€μ›Œλ“œλ‘œ SPORTS λ³€μˆ˜μ— '좕ꡬ'λΌλŠ” 값을 ν• λ‹Ήν–ˆμŠ΅λ‹ˆλ‹€. try { } 블둝은 μ•ˆκ³Ό λ°–μ˜ μŠ€μ½”ν”„κ°€ λ‹€λ¦…λ‹ˆλ‹€. try { } 블둝 μ•ˆμ— μžˆλŠ” SPORTS λ³€μˆ˜κ°€ try 블둝 μŠ€μ½”ν”„μ—μ„œ ν‚€μ›Œλ“œλ₯Ό λͺ»μ°Ύμ•˜κΈ° λ•Œλ¬Έμ— λ°–μœΌλ‘œ λ‚˜κ°€μ„œ SPORTS λ³€μˆ˜λ₯Ό μ°ΎμŠ΅λ‹ˆλ‹€.  ν•˜μ§€λ§Œ const ν‚€μ›Œλ“œμ΄κΈ° λ•Œλ¬Έμ— μž¬ν• λ‹Ήμ„ ν•  수 μ—†μ£ . λ§Œμ•½ const ν‚€μ›Œλ“œκ°€ μ•„λ‹ˆκ³  let ν‚€μ›Œλ“œμ˜€λ”λΌλ©΄ SPORTS λ³€μˆ˜μ—” '농ꡬ'λΌλŠ” 값이 ν• λ‹Ήλ˜μ—ˆμ„ κ²λ‹ˆλ‹€. ν•˜μ§€λ§Œ const ν‚€μ›Œλ“œμ΄κΈ° λ•Œλ¬Έμ— 값을 λ³€κ²½ν•  수 μ—†κ³  μ—λŸ¬κ°€ λ°œμƒν•΄μ„œ catch λΈ”λ‘μ˜ console.log( )κ°€ μ‹€ν–‰λ©λ‹ˆλ‹€.

     

    const ν‚€μ›Œλ“œμ— λŒ€ν•΄ 이해가 λ˜μ…¨λ‚˜μš”? κΆκΈˆν•˜μ‹  점은 λŒ“κΈ€λ‘œ λ‚¨κ²¨μ£Όμ„Έμš”. μ œκ°€ λͺ¨λ₯΄λŠ” 것도 μ–΄λ–»κ²Œλ“  μ°Ύμ•„μ„œ λ‹΅λ³€λ“œλ¦¬κ³  같이 μ„±μž₯ν•˜κ² μŠ΅λ‹ˆλ‹€ :)

     

    κ°μ‚¬ν•©λ‹ˆλ‹€, Jerryμ˜€μŠ΅λ‹ˆλ‹€!

     

     

    λŒ“κΈ€

Posted by Bejerry.