Skip to content

Latest commit

Β 

History

History
70 lines (59 loc) Β· 3.39 KB

ch14-ν•΄μ„€.md

File metadata and controls

70 lines (59 loc) Β· 3.39 KB

Chapter14 μ „μ—­ λ³€μˆ˜μ˜ 문제점

πŸ“Œλ¬Έμ œ1

true or falseλ₯Ό μž‘μ„±ν•˜μ‹œμ˜€

1. 지역 λ³€μˆ˜λŠ” ν•¨μˆ˜μ˜ 생λͺ…주기와 항상 μΌμΉ˜ν•œλ‹€.
2. var ν‚€μ›Œλ“œλ‘œ μ„ μ–Έν•œ μ „μ—­ λ³€μˆ˜μ˜ 생λͺ… μ£ΌκΈ°λŠ” μ „μ—­ 객체의 생λͺ… 주기와 항상 μΌμΉ˜ν•œλ‹€.
3. μ „μ—­ λ³€μˆ˜λŠ” μŠ€μ½”ν”„ 체인 상에 κ°€μž₯ λ§ˆμ§€λ§‰μ— μ‘΄μž¬ν•˜κΈ° λ•Œλ¬Έμ— 검색 속도가 κ°€μž₯ λŠλ¦¬λ‹€. 

μ •λ‹΅ 및 ν•΄μ„€

1. false. λŒ€λΆ€λΆ„ μΌμΉ˜ν•˜μ§€λ§Œ 지역 λ³€μˆ˜κ°€ ν•¨μˆ˜λ³΄λ‹€ 였래 μƒμ‘΄ν•˜λŠ” κ²½μš°κ°€ μžˆλ‹€.μŠ€μ½”ν”„λ₯Ό μ°Έμ‘°ν•˜κ³  μžˆλ‹€λ©΄ ν•΄μ œλ˜μ§€ μ•ŠλŠ”λ‹€. 
2. true. var ν‚€μ›Œλ“œλ‘œ μ„ μ–Έν•œ μ „μ—­ λ³€μˆ˜λŠ” μ „μ—­ 객체의 ν”„λ‘œνΌν‹°κ°€ λœλ‹€.
3. true. μ „μ—­ λ³€μˆ˜λŠ” μŠ€μ½”ν”„ 체인 μƒμ—μ„œ 쒅점에 μ‘΄μž¬ν•˜κΈ° λ•Œλ¬Έμ— 검색 속도가 κ°€μž₯ λŠλ¦¬λ‹€.

πŸ“Œλ¬Έμ œ2

μ „μ—­ λ³€μˆ˜μ˜ μ‚¬μš©μ„ μ–΅μ œν•˜λŠ” 방법쀑 ES6λͺ¨λ“ˆμ—λŒ€ν•΄μ„œ μ„€λͺ…ν•˜μ‹œμ˜€.

λ‹΅μ•ˆ μž‘μ„±

1. Es6λͺ¨λ“ˆμ€ 파일 자체의 λ…μžμ μΈ λͺ¨λ“ˆ μŠ€μ½”ν”„λ₯Ό μ œκ³΅ν•œλ‹€. λ”°λΌμ„œ λͺ¨λ“ˆ λ‚΄μ—μ„œ varν‚€μ›Œλ“œλ‘œ λ³€μˆ˜λ₯Ό μ„ μ–Έν•˜λ”λΌλ„ 더이상 μ „μ—­ λ³€μˆ˜κ°€ μ•„λ‹ˆλ©°, window 객체의 ν”„λ‘œνΌν‹°λ„ μ•„λ‹ˆλ‹€.
2. scriptνƒœκ·Έμ— type=”module” μ–΄νŠΈλ¦¬λ·°νŠΈλ₯Ό μΆ”κ°€ν•˜λ©΄ λ‘œλ“œλœ μžλ°”μŠ€ν¬λ¦½νŠΈ νŒŒμΌμ€ λͺ¨λ“ˆλ‘œμ„œ λ™μž‘ν•œλ‹€.
3. κ·ΈλŸΌμ—λ„ λΆˆκ΅¬ν•˜κ³  webpackλ“±μ˜ λͺ¨λ“ˆ λ²ˆλ“€λŸ¬λ₯Ό μ‚¬μš©ν•˜λŠ” μ΄μœ λŠ” 트랜슀 파일링, λ²ˆλ“€λ§μ΄ ν•„μš”ν•˜κΈ° λ•Œλ¬Έμ΄λ‹€.

πŸ“Œλ¬Έμ œ3

μ „μ—­ λ³€μˆ˜μ˜ λ¬΄λΆ„λ³„ν•œ μ‚¬μš©μ€ μœ„ν—˜ν•˜κΈ° 떄문에, μ „μ—­ λ³€μˆ˜λ₯Ό λ°˜λ“œμ‹œ μ‚¬μš©ν•΄μ•Ό ν•  μ΄μœ κ°€ μ—†λ‹€λ©΄ μ§€μ—­λ³€μˆ˜λ₯Ό μ‚¬μš©ν•΄μ•Ό ν•œλ‹€.

κ΅μž¬μ— λͺ…μ‹œλœ μ „μ—­ λ³€μˆ˜μ˜ μ‚¬μš©μ„ μ–΅μ œν•˜λŠ” 방법을 μ„œμˆ ν•˜μ„Έμš”.

λ‹΅μ•ˆ μž‘μ„±

(1) μ¦‰μ‹œ μ‹€ν–‰ ν•¨μˆ˜
λͺ¨λ“  μ½”λ“œλ₯Ό μ¦‰μ‹œ μ‹€ν–‰ ν•¨μˆ˜λ₯΄ 감싸면 λͺ¨λ“  λ³€μˆ˜λŠ” μ¦‰μ‹œ μ‹€ν–‰ ν•¨μˆ˜μ˜ 지역 λ³€μˆ˜κ°€ λœλ‹€.

(2) λ„€μž„μŠ€νŽ˜μ΄μŠ€ 객체
전역에 λ„€μž„μŠ€νŽ˜μ΄μŠ€ 역할을 λ‹΄λ‹Ήν•  객체λ₯Ό μƒμ„±ν•˜κ³ , μ „μ—­ λ³€μˆ˜μ²˜λŸΌ μ‚¬μš©ν•˜κ³  싢은 λ³€μˆ˜λ₯Ό ν”„λ‘œνΌν‹°λ‘œ μΆ”κ°€ν•œλ‹€.
μ‹λ³„μž μΆ©λŒμ„ λ°©μ§€ν•˜λŠ” νš¨κ³ΌλŠ” μžˆμ§€λ§Œ λ„€μž„μŠ€νŽ˜μ΄μŠ€ 객체 μžμ²΄κ°€ μ „μ—­ λ³€μˆ˜μ— ν• λ‹Ήλ˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— μœ μš©ν•œ 방법은 μ•„λ‹ˆλ‹€.

(3) λͺ¨λ“ˆ νŒ¨ν„΄
클래슀λ₯Ό λͺ¨λ°©ν•΄μ„œ κ΄€λ ¨μžˆλŠ” λ³€μˆ˜μ™€ ν•¨μˆ˜λ₯Ό λͺ¨μ•„ μ¦‰μ‹œ μ‹€ν–‰ ν•¨μˆ˜λ‘œ 감싸 ν•˜λ‚˜μ˜ λͺ¨λ“ˆμ„ λ§Œλ“ λ‹€.

(4) ES6 λͺ¨λ“ˆ
ES6 λͺ¨λ“ˆμ€ 파일 자체의 λ…μžμ μΈ λͺ¨λ“ˆ μŠ€μ½”ν”„λ₯Ό μ œκ³΅ν•œλ‹€.
λ”°λΌμ„œ λͺ¨λ“ˆ λ‚΄μ—μ„œ var ν‚€μ›Œλ“œλ‘œ μ„ μ–Έν•œ λ³€μˆ˜λŠ” λ”λŠ” μ „μ—­ λ³€μˆ˜κ°€ μ•„λ‹ˆλ©°, window 객체의 ν”„λ‘œνΌν‹°λ„ μ•„λ‹ˆλ‹€.

πŸ“Œλ¬Έμ œ3

λ‹€μŒ 보기의 μ„€λͺ… 쀑 μ˜³μ€ 것을 λͺ¨λ‘ κ³ λ₯΄μ‹œμ˜€.

(1) μ¦‰μ‹œ μ‹€ν–‰ ν•¨μˆ˜λŠ” μ „μ—­ λ³€μˆ˜μ˜ κ΄€μ μ—μ„œ ES6λͺ¨λ“ˆκ³Ό 크게 λ‹€λ₯΄μ§€ μ•Šλ‹€.
(2) λ„€μž„μŠ€νŽ˜μ΄μŠ€ 객체λ₯Ό μ‚¬μš©ν•˜λ©΄ μ „μ—­ λ³€μˆ˜λ₯Ό μ „ν˜€ μ‚¬μš©ν•˜μ§€ μ•Šμ„ 수 μžˆλ‹€.
(3) λͺ¨λ“ˆ νŒ¨ν„΄μ€ μžλ°”μŠ€ν¬λ¦½νŠΈμ΄ ν΄λ‘œμ €λ₯Ό μ΄μš©ν•˜μ—¬ λ™μž‘ν•œλ‹€.

μ •λ‹΅ 및 ν•΄μ„€

(1) true
μ „μ—­ λ³€μˆ˜λ₯Ό κ³΅μœ ν•˜μ§€ μ•Šκ²Œ λ§Œλ“œλŠ” ES6λͺ¨λ“ˆκ³Ό λ™μΌν•˜κ²Œ μ¦‰μ‹œ μ‹€ν–‰ ν•¨μˆ˜λ₯Ό μ΄μš©ν•˜μ—¬ κ΅¬ν˜„ ν•  수 μžˆλ‹€.
(2) false
λ„€μž„μŠ€νŽ˜μ΄μŠ€ 객체의 λ³€μˆ˜κ°€ μ „μ—­ λ³€μˆ˜λ‘œ μ‚¬μš©λ˜μ–΄ 진닀.
(3) true
μ™ΈλΆ€μ—μ„œ μ ‘κ·Ό κ°€λŠ₯, λΆˆκ°€λŠ₯ν•œ λ³€μˆ˜, ν•¨μˆ˜λ₯Ό λ§Œλ“œλŠ” 것은 ν΄λ‘œμ €μ΄λ―€λ‘œ 이λ₯Ό ν™œμš©ν•˜μ—¬ λͺ¨λ“ˆ νŒ¨ν„΄μ„ λ§Œλ“€ 수 μžˆλ‹€.
  • p205~207