0804 TIL Scope , Closure

λƒν•˜ν˜Έν›„Β·2021λ…„ 8μ›” 4일
0

TIL

λͺ©λ‘ 보기
20/101

μ›μ‹œ μžλ£Œν˜•κ³Ό μ°Έμ‘° μžλ£Œν˜•

πŸ™†β€β™€οΈ μ›μ‹œ μžλ£Œν˜•(primitive type)κ³Ό μ°Έμ‘° μžλ£Œν˜•(reference type)의 ꡬ뢄이 μ™œ ν•„μš”ν•œμ§€μ— λŒ€ν•΄μ„œ 이해할 수 μžˆλ‹€.

πŸ™†β€β™€οΈ μ›μ‹œ μžλ£Œν˜•κ³Ό μ°Έμ‘° μžλ£Œν˜•μ˜ 차이λ₯Ό μ΄ν•΄ν•˜κ³ , 각자 λ§žλŠ” μƒν™©μ—μ„œ μ‚¬μš©ν•  수 μžˆλ‹€.

πŸ™†β€β™€οΈ μ›μ‹œ μžλ£Œν˜•μ΄ 할당될 λ•Œμ—λŠ” λ³€μˆ˜μ— κ°’(value) μžμ²΄κ°€ λ‹΄κΈ°κ³ , μ°Έμ‘° μžλ£Œν˜•μ΄ 할당될 λ•ŒλŠ” λ³΄κ΄€ν•¨μ˜ μ£Όμ†Œ(reference)κ°€ λ‹΄κΈ΄λ‹€λŠ” κ°œλ…μ„ μ½”λ“œλ‘œ μ„€λͺ…ν•  수 μžˆλ‹€.

πŸ™†β€β™€οΈ μ°Έμ‘° μžλ£Œν˜•μ€ 기쑴에 κ³ μ •λœ 크기의 보관함이 μ•„λ‹ˆλΌ, λ™μ μœΌλ‘œ 크기가 λ³€ν•˜λŠ” νŠΉλ³„ν•œ 보관함을 μ‚¬μš©ν•œλ‹€λŠ” 것을 이해할 수 μžˆλ‹€.

μŠ€μ½”ν”„

πŸ™†β€β™€οΈ μŠ€μ½”ν”„μ˜ μ˜λ―Έμ™€ 적용 λ²”μœ„λ₯Ό 이해할 수 μžˆλ‹€

λ³€μˆ˜ μ ‘κ·Όκ·œμΉ™μ— λ”°λ₯Έ μœ νš¨λ²”μœ„

πŸ™†β€β™€οΈ μŠ€μ½”ν”„μ˜ μ£Όμš” κ·œμΉ™μ„ 이해할 수 μžˆλ‹€

μ•ˆμͺ½ μŠ€μ½”ν”„λŠ” λ°”κΉ₯μͺ½μŠ€μ½”ν”„μ˜ λ³€μˆ˜λ₯Ό μ‚¬μš©ν•  수 μžˆμ§€λ§Œ
λ°”κΉ₯μͺ½ μŠ€μ½”ν”„λŠ” μ•ˆμͺ½ μŠ€μ½”ν”„μ˜ λ³€μˆ˜λ₯Ό μ‚¬μš©ν•  수 μ—†λ‹€

πŸ™†β€β™€οΈ 쀑첩 κ·œμΉ™

μŠ€μ½”ν”„λŠ” 쀑첩이 κ°€λŠ₯ν•˜λ‹€.

πŸ™†β€β™€οΈ block scope와 function scope

  • block scope : μ€‘κ΄„ν˜Έ{}λ₯Ό κΈ°μ€€μœΌλ‘œ λ²”μœ„κ°€ κ΅¬λΆ„λœλ‹€.
  • function scope : ν•¨μˆ˜λ‘œ λ‘˜λŸ¬μ‹Ό λ²”μœ„

πŸ™†β€β™€οΈ μ „μ—­ μŠ€μ½”ν”„μ™€ 지역 μŠ€μ½”ν”„

κ°€μž₯ λ°”κΉ₯의 μŠ€μ½”ν”„ = μ „μ—­μŠ€μ½”ν”„
κ·Έ μ™Έ = 지역 μŠ€μ½”ν”„

πŸ™†β€β™€οΈ μ „μ—­ λ³€μˆ˜μ™€ 지역 λ³€μˆ˜κ°„μ˜ μš°μ„  μˆœμœ„

μ§€μ—­λ³€μˆ˜κ°€ μ „μ—­λ³€μˆ˜λ³΄λ‹€ μš°μ„  μˆœμœ„κ°€ λ†’λ‹€.

πŸ™†β€β™€οΈ let, const, var 의 차이

letconstvar
μœ νš¨λ²”μœ„λΈ”λ‘μŠ€μ½”ν”„λ° ν•¨μˆ˜μŠ€μ½”ν”„λΈ”λ‘μŠ€μ½”ν”„ 및 ν•¨μˆ˜μŠ€μ½”ν”„λΈ”λ‘μŠ€μ½”ν”„
κ°’ μž¬ν• λ‹Ήκ°€λŠ₯λΆˆκ°€λŠ₯κ°€λŠ₯
μž¬μ„ μ–ΈλΆˆκ°€λŠ₯λΆˆκ°€λŠ₯κ°€λŠ₯

πŸ™†β€β™€οΈ μ „μ—­ 객체(window)의 이해

μ£Όμ˜μ‚¬ν•­

ν™”μ‚΄ν‘œ ν•¨μˆ˜λŠ” 블둝 μŠ€μ½”ν”„λ‘œ μ·¨κΈ‰λ©λ‹ˆλ‹€. ν•¨μˆ˜ μŠ€μ½”ν”„κ°€ μ•„λ‹™λ‹ˆλ‹€.

  1. μ „μ—­λ³€μˆ˜μ— λ„ˆλ¬΄ λ§Žμ€ λ³€μˆ˜λ₯Ό μ„ μ–Έν•˜μ§€ λ§ˆμ„Έμš”
    νŽΈλ¦¬ν•œ λŒ€μ‹  λ‹€λ₯Έν•¨μˆ˜ ν˜Ήμ€ λ‘œμ§μ—μ˜ν•΄ μ˜λ„λ˜μ§€μ•Šμ€ 변경이 λ°œμƒν•  수 μžˆλ‹€.(side effect λ°œμƒ)
  2. μ„ μ–Έ 없이 λ³€μˆ˜λ₯Ό ν• λ‹Ήν•˜μ§€ λ§ˆμ„Έμš”.
    μ„ μ–Έ 없이 λ³€μˆ˜λ₯Ό ν• λ‹Ήν•˜λ©΄, ν•΄λ‹Ή λ³€μˆ˜λŠ” var둜 μ„ μ–Έν•œ μ „μ—­ λ³€μˆ˜μ²˜λŸΌ μ·¨κΈ‰λ©λ‹ˆλ‹€.

ν΄λ‘œμ €

ν•¨μˆ˜μ™€ ν•¨μˆ˜κ°€ μ„ μ–Έλœ μ–΄νœ˜μ  ν™˜κ²½μ˜ μ‘°ν•©.

πŸ™†β€β™€οΈ ν΄λ‘œμ € ν•¨μˆ˜μ˜ μ •μ˜μ™€ νŠΉμ§•μ— λŒ€ν•΄μ„œ 이해할 수 μžˆλ‹€
πŸ™†β€β™€οΈ ν΄λ‘œμ €κ°€ κ°–λŠ” μŠ€μ½”ν”„ λ²”μœ„λ₯Ό 이해할 수 μžˆλ‹€
πŸ™†β€β™€οΈ ν΄λ‘œμ €λ₯Ό μ΄μš©ν•΄ μœ μš©ν•˜κ²Œ μ“°μ΄λŠ” λͺ‡ 가지 μ½”λ”© νŒ¨ν„΄μ„ 이해할 수 μžˆλ‹€

profile
DONE is better than PERFECT

0개의 λŒ“κΈ€

κ΄€λ ¨ μ±„μš© 정보