[250819] TIL

Today I Learned (2025-08-19)

STAR 기법 4단계

  1. 상황
    • μ–΄λ–€ μƒν™©μ—μ„œ 일이 λ°œμƒν–ˆλŠ”μ§€ λ§₯락 μ„€λͺ…ν•˜κΈ°
    • β€œμž‘λ…„ 여름 인턴 ν”„λ‘œμ νŠΈμ—μ„œ μ„±λŠ₯ μ΅œμ ν™” 과제λ₯Ό 맑게 λ˜μ—ˆμŠ΅λ‹ˆλ‹€.”
  2. 과제
    • λ§‘μ•˜λ˜ μ—­ν• μ΄λ‚˜ μ±…μž„ μ΄μ•ΌκΈ°ν•˜κΈ°
    • β€œμ €λŠ” LCP μ‹œκ°„μ„ μ€„μ΄λŠ” μ±…μž„μ„ λ§‘μ•˜μ–΄μš”.”
  3. 행동
    • μ‹€μ œ μ–΄λ–€ 행동, λ…Έλ ₯을 ν–ˆλŠ”μ§€ ꡬ체적으둜 μ„€λͺ…ν•˜κΈ°
    • β€œλΆ„μ„ νˆ΄μ„ μ΄μš©ν•΄ 병λͺ© ꡬ간을 μ°Ύμ•„ 이미지 μ΅œμ ν™”μ™€ μ½”λ“œ μŠ€ν”Œλ¦¬νŒ…μ„ μ μš©ν–ˆμŠ΅λ‹ˆλ‹€.”
  4. κ²°κ³Ό
    • κ²°κ³Ό 이야기 ν•˜κΈ°

CommonJS , ESM 와 μŠ€μ½”ν”„

λͺ¨λ“ˆ μ‹œμŠ€ν…œμ΄λž€?

  • μ½”λ“œμ˜ μž¬μ‚¬μš©μ„±κ³Ό μœ μ§€λ³΄μˆ˜μ„±μ„ 높이기 μœ„ν•΄ ν”„λ‘œκ·Έλž¨μ„ λ…λ¦½λœ λ‹¨μœ„λ‘œ λ‚˜λˆ„κ³  μ„œλ‘œ κ°€μ Έλ‹€ μ“Έ 수 μžˆλ„λ‘ κ·œμΉ™μ„ μ •ν•œ 체계
  • λ‹¨μˆœνžˆ 파일 μ—¬λŸ¬ 개둜 ꡬ성 λ˜μ—ˆλ‹€κ³  ν•΄μ„œ λͺ¨λ“ˆμ΄ μ•„λ‹ˆλΌ, import/export λ“±μ˜ ν‚€μ›Œλ“œλ‘œ 내보내지고 λΆˆλŸ¬μ˜€λŠ”μ§€μ— 따라 λͺ¨λ“ˆμ΄λΌ 뢀름
  • λ…λ¦½λœ κΈ°λŠ₯ λ‹¨μœ„λ‘œ λ§Œλ“€μ–΄μ•Ό 함

λΈŒλΌμš°μ €

<script> // μ „μ—­ μŠ€μ½”ν”„
<script type="module"> πŸ‘‰ 파일 λ‹¨μœ„ μŠ€μ½”ν”„. (var도 μ§€μ—­μ²˜λŸΌ λ™μž‘)

Node.js

  • 항상 λͺ¨λ“ˆ μŠ€μ½”ν”„λ‹€.
  • μ–΄λ–€ λͺ¨λ“ˆ μ‹œμŠ€ν…œμ΄λƒμ— 따라 λΆˆλŸ¬μ˜€λŠ” λ°©λ²•λ§Œ 닀름
  • λ¬Έλ²•λ§Œ 닀름
CommonJS (μ˜›λ‚  방식): require() / module.exports
ESM (ν‘œμ€€ 방식): import / export

CommonJS vs ESM 차이

ꡬ뢄 CommonJS ESM
κΈ°λ³Έ 문법 require() / module.exports import / export
μ‹€ν–‰ 방식 λŸ°νƒ€μž„μ— 뢈러옴 (동적) 컴파일 λ‹¨κ³„μ—μ„œ 미리 νŒŒμ•… (정적)
파일 ν™•μž₯자 .cjs (보톡 .js) .mjs (λ˜λŠ” package.json에 β€œtype”: β€œmodule”)
μŠ€μ½”ν”„ 파일 λ‹¨μœ„ 파일 λ‹¨μœ„
  • package.json에 β€œtype” : β€œmodule” 을 μ“°λ©΄ js도 esm 취급을 ν•œλ‹€.

Categories:

Updated:

Leave a comment