Moment: μ†Œλ¬Έμž λ˜λŠ” λŒ€λ¬Έμžλ‘œ μ‹œμž‘

에 λ§Œλ“  2015λ…„ 01μ›” 29일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: moment/moment

일뢀 μ–Έμ–΄μ—μ„œλŠ” λ¬Έμž₯이 μ†Œλ¬Έμžλ‘œ μ‹œμž‘ν•˜κ³  일뢀 μ–Έμ–΄μ—μ„œλŠ” λ¬Έμž₯이 λŒ€λ¬Έμžλ‘œ μ‹œμž‘ν•©λ‹ˆλ‹€.
일관성을 μœ„ν•΄ λͺ¨λ“  μ–Έμ–΄(μ μ ˆν•œ 경우)에 λŒ€ν•΄ λ‘˜ 쀑 ν•˜λ‚˜λ₯Ό 선택해야 ν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

ν˜„μž¬ μ†Œλ¬Έμž 예:
λ„€λœλž€λ“œμ–΄ - gisteren om 00:07
프리지아어 - juster om 00:07
ν„°ν‚€μ–΄ - dun 00:07

ν˜„μž¬ λŒ€λ¬Έμž 예:
μ˜μ–΄ - μ–΄μ œ μ˜€μ „ 12:07
μ•„ν”„λ¦¬μΉΈμŠ€μ–΄ - Gister om 00:07
λ£©μ…ˆλΆ€λ₯΄ν¬μ–΄ - GΓ«schter um 0:07 Auer

μ‹€μ œ λ¬Έμž₯이 μ•„λ‹ˆκΈ° λ•Œλ¬Έμ— μ†Œλ¬Έμžλ₯Ό μ‚¬μš©ν•΄μ•Ό ν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.
λ¬Έμž₯ 쀑간에 μ‚¬μš©ν•˜κ³  μ‹Άλ‹€λ©΄ PHP의 ucfirst와 같은 κΈ°λŠ₯을 μΆ”μ²œν•©λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ‚˜λŠ” μ‹€μ œλ‘œ λ™μ˜ν•˜μ§€ μ•ŠμœΌλ©° μ μ ˆν•œ 제λͺ© μΌ€μ΄μŠ€λ‘œ κ°€μ•Όν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 정말 μ‰½μŠ΅λ‹ˆλ‹€:

moment(...).format("MMM").toLowerCase()

μˆ˜ν–‰ν•˜λŠ” 것보닀 μ†Œλ¬Έμž 값을 μ–»μœΌλ €λ©΄ λ‹€μŒμ„ μˆ˜ν–‰ν•˜μ‹­μ‹œμ˜€.

var date = moment(...).format("MMM")
date = date[0].toUpperCase() + date.substr(1)

λ§ν•˜μžλ©΄ λ‘œμΌ€μΌμ΄ μ–Έμ–΄μ˜ 문법과 μΌμΉ˜ν•œλ‹€κ³  μƒκ°ν•˜μ§€λ§Œ μ €λŠ” μ–Έμ–΄ν•™μžκ°€ μ•„λ‹™λ‹ˆλ‹€.

λͺ¨λ“  3 λŒ“κΈ€

λ‚˜λŠ” μ‹€μ œλ‘œ λ™μ˜ν•˜μ§€ μ•ŠμœΌλ©° μ μ ˆν•œ 제λͺ© μΌ€μ΄μŠ€λ‘œ κ°€μ•Όν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 정말 μ‰½μŠ΅λ‹ˆλ‹€:

moment(...).format("MMM").toLowerCase()

μˆ˜ν–‰ν•˜λŠ” 것보닀 μ†Œλ¬Έμž 값을 μ–»μœΌλ €λ©΄ λ‹€μŒμ„ μˆ˜ν–‰ν•˜μ‹­μ‹œμ˜€.

var date = moment(...).format("MMM")
date = date[0].toUpperCase() + date.substr(1)

λ§ν•˜μžλ©΄ λ‘œμΌ€μΌμ΄ μ–Έμ–΄μ˜ 문법과 μΌμΉ˜ν•œλ‹€κ³  μƒκ°ν•˜μ§€λ§Œ μ €λŠ” μ–Έμ–΄ν•™μžκ°€ μ•„λ‹™λ‹ˆλ‹€.

이것은 또 λ‹€λ₯Έ ν† λ‘  μ£Όμ œμž…λ‹ˆλ‹€. μ œλŒ€λ‘œ μž‘λ™ν•˜κ²Œ ν•˜λ €λ©΄ λ‘œμΌ€μΌμ΄ 변경될 수 μžˆλŠ” 문자의 λŒ€μ†Œλ¬Έμžλ₯Ό μ§€μ •ν•˜λŠ” 방법이 ν•„μš”ν•˜κ³  ν˜•μ‹ ν•¨μˆ˜λŠ” μ†Œλ¬Έμž/λŒ€λ¬Έμž/일반 λŒ€μ†Œλ¬Έμž ν”Œλž˜κ·Έλ₯Ό μ œκ³΅ν•΄μ•Ό ν•©λ‹ˆλ‹€.

이것은 곧 λ°œμƒν•˜μ§€ μ•ŠμœΌλ―€λ‘œ μ§€κΈˆμ€ νŠΉμ • 언어에 λŒ€ν•œ 좜λ ₯μ—μ„œ β€‹β€‹λ¬Έμžμ—΄ 해킹을 μˆ˜ν–‰ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.

첫 번째 문자λ₯Ό λŒ€λ¬Έμžλ‘œ λ§Œλ“œλŠ” 것이 항상 μ•ˆμ „ν•˜κ³  κ·Έ λ°˜λŒ€λŠ” 사싀이 μ•„λ‹ˆκΈ° λ•Œλ¬Έμ— 제λͺ© μΌ€μ΄μŠ€κ°€ μ—†λŠ” 것보닀 μ—†λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.

λ‘œμΌ€μΌμ΄ μ†Œλ¬Έμžλ₯Ό μ‚¬μš©ν•˜λŠ” 경우:

  • 첫 번째 문자λ₯Ό λŒ€λ¬Έμžλ‘œ λ§Œλ“€μ–΄μ„œ λ¬Έμž₯ μ‹œμž‘ 뢀뢄에 calendar() λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. (*)
  • λ¬Έμž₯ λ‚΄μ—μ„œ calendar() μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

λ‘œμΌ€μΌμ΄ 제λͺ© μΌ€μ΄μŠ€λ₯Ό μ‚¬μš©ν•˜λŠ” 경우:

  • λ¬Έμž₯의 μ‹œμž‘ 뢀뢄에 calendar() λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • κ΄€λ ¨ λ¬Έμžμ—΄μ„ μˆ˜λ™μœΌλ‘œ μ‹λ³„ν•˜κ³ (μ–΄λ €μšΈ 수 있음) 첫 번째 문자λ₯Ό μ†Œλ¬Έμžλ‘œ λ§Œλ“€μ–΄ λ¬Έμž₯ λ‚΄μ—μ„œ calendar() μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. (*)

(*) λ‚΄κ°€ μ•„λŠ” ν•œ. μžμ„Έν•œ λ‚΄μš©μ€ https://en.wikipedia.org/wiki/Capitalization 을 μ°Έμ‘°ν•˜μ„Έμš”.

λ‘œμΌ€μΌλ³„λ‘œ κ²°μ •ν•˜λŠ” 것이 합리적일 수 μžˆμŠ΅λ‹ˆλ‹€. 각 λ‘œμΌ€μΌμ€ 결정을 λ¬Έμ„œν™”ν•΄μ•Ό ν•©λ‹ˆλ‹€.

이것은 λ˜ν•œ λ‚΄ PRκ³Ό 관련이 μžˆμŠ΅λ‹ˆλ‹€: https://github.com/moment/moment/pull/2422

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰