πŸ’» FE

속성 , ν”„λ‘œνΌν‹°

Roy Miller 2025. 5. 14. 15:29
  1. 속성(Attributes):
    • HTML μ½”λ“œ μƒμ—μ„œ μš”μ†Œ νƒœκ·Έμ— 직접 μž‘μ„±λ©λ‹ˆλ‹€. (예: <input id="my-input" class="my-class" value="initial value"> μ—¬κΈ°μ„œ id, class, valueκ°€ μ†μ„±μž…λ‹ˆλ‹€.)
    • HTML λ¬Έμ„œμ˜ 초기 μƒνƒœλ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
  2. ν”„λ‘œνΌν‹°(Properties):
    • λΈŒλΌμš°μ €κ°€ HTML μ½”λ“œλ₯Ό νŒŒμ‹±ν•˜μ—¬ DOM μš”μ†Œλ₯Ό 생성할 λ•Œ, 이 DOM 객체에 μžλ™μœΌλ‘œ μΆ”κ°€λ˜λŠ” 객체의 μ†μ„±μž…λ‹ˆλ‹€.
    • ν•΄λ‹Ή DOM μš”μ†Œμ˜ ν˜„μž¬ μƒνƒœλ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€. μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œ element.id, element.className, element.value와 같이 μ ‘κ·Όν•˜κ³  μ‘°μž‘ν•˜λŠ” λŒ€μƒμž…λ‹ˆλ‹€.
  3. 관계 및 동기화:
    • λΈŒλΌμš°μ €λŠ” HTML 속성을 읽어와 ν•΄λ‹Ή DOM 객체의 초기 ν”„λ‘œνΌν‹° 값을 μ„€μ •ν•©λ‹ˆλ‹€.
    • λ§Žμ€ 경우, 속성과 ν”„λ‘œνΌν‹°λŠ” μ„œλ‘œ **λ§€ν•‘(Mapping)**λ˜μ–΄ 있으며 **"μ‹€μ‹œκ°„ 동기화(live synchronization)"**κ°€ μΌμ–΄λ‚©λ‹ˆλ‹€. 즉, 속성 값이 λ³€ν•˜λ©΄ κ΄€λ ¨ ν”„λ‘œνΌν‹° 값도 μ—…λ°μ΄νŠΈλ˜κ³ , ν”„λ‘œνΌν‹° 값이 λ³€ν•˜λ©΄ 속성 κ°’(λ˜λŠ” 적어도 λΈŒλΌμš°μ €μ˜ λ‚΄λΆ€ μƒνƒœ)도 μ—…λ°μ΄νŠΈλ˜λŠ” κ²½μš°κ°€ λ§ŽμŠ΅λ‹ˆλ‹€.
    • ν•˜μ§€λ§Œ 이 λ§€ν•‘κ³Ό 동기화 방식은 속성과 ν”„λ‘œνΌν‹°μ˜ μ’…λ₯˜μ— 따라 λ‹€λ₯Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
      • id 속성 -> id ν”„λ‘œνΌν‹°: 1:1 맀핑이며 μ‹€μ‹œκ°„ λ™κΈ°ν™”λ©λ‹ˆλ‹€.
      • class 속성 -> className ν”„λ‘œνΌν‹°: 이름은 λ‹€λ₯΄μ§€λ§Œ μ‹€μ‹œκ°„ λ™κΈ°ν™”λ©λ‹ˆλ‹€. (element.classList ν”„λ‘œνΌν‹°λ„ κ΄€λ ¨ μžˆμŠ΅λ‹ˆλ‹€.)
      • value 속성 -> value ν”„λ‘œνΌν‹°: 1:1 λ§€ν•‘μ΄μ§€λ§Œ, μ‚¬μš©μžμ˜ μž…λ ₯ λ“±μœΌλ‘œ ν”„λ‘œνΌν‹° 값이 λ³€κ²½λ˜μ–΄λ„ HTML μ†ŒμŠ€μ˜ value 속성 값이 항상 μ¦‰μ‹œ μ—…λ°μ΄νŠΈλ˜λŠ” 것은 아닐 수 μžˆμŠ΅λ‹ˆλ‹€ (νŒŒμΌμ—μ„œλŠ” '1-way live-sync'둜 ν‘œν˜„λœ 뢀뢄이 이와 관련될 수 μžˆμœΌλ‚˜, μ‹€μ œλ‘œλŠ” ν”„λ‘œνΌν‹° 변경이 UI 및 λ‚΄λΆ€ μƒνƒœμ— 더 μ§μ ‘μ μœΌλ‘œ λ°˜μ˜λ©λ‹ˆλ‹€).

μš”μ•½ν•˜μžλ©΄, 속성은 HTML에 μž‘μ„±λœ μš”μ†Œμ˜ 초기 섀정값이고, ν”„λ‘œνΌν‹°λŠ” μžλ°”μŠ€ν¬λ¦½νŠΈλ‘œ μ ‘κ·Ό/μ‘°μž‘ κ°€λŠ₯ν•œ DOM 객체의 ν˜„μž¬ μƒνƒœμž…λ‹ˆλ‹€. λ‘˜μ€ λ°€μ ‘ν•˜κ²Œ μ—°κ²°λ˜μ–΄ μ’…μ’… λ™κΈ°ν™”λ˜μ§€λ§Œ, μ™„μ „νžˆ λ™μΌν•˜μ§€λŠ” μ•ŠμœΌλ©° 특히 동적인 μƒνƒœ λ³€ν™”λŠ” 주둜 ν”„λ‘œνΌν‹°λ₯Ό 톡해 λ‹€λ£¨μ–΄μ§‘λ‹ˆλ‹€. νŒŒμΌμ€ MDN λ¬Έμ„œλ₯Ό μ°Έκ³ ν•˜μ—¬ 각 ν”„λ‘œνΌν‹°μ˜ μ •ν™•ν•œ λ™μž‘μ„ 확인할 것을 ꢌμž₯ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

 

'πŸ’» FE' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

children, childNodes  (0) 2025.05.16
querySelectorAll('li'), getElementsByTagName('li')  (0) 2025.05.14
μ œλ―Έλ‚˜μ΄μ™€μ˜λŒ€ν™”  (0) 2025.05.13
κΉƒ μ›Œν¬ ν”Œλ‘œμš°  (0) 2025.05.13
기리기리기리깃 !  (0) 2025.05.13