ํ์ผ์ ์ฒจ๋ถํ ๋ ํ์ผ๋ช ์ ๋ณด์ฌ์ฃผ๋ input ๋ฐ์ค ๊ธธ์ด ๋ณด๋ค ํ์ผ๋ช ์ด ๋ ๊ธธ ๊ฒฝ์ฐ,
ํ์ผ๋ช ์ด ์ค๋ฒ๋์ด ์ผ๋ถ๋ง ์ถ๋ ฅ๋๋ ํ์์ด ๋ฐ์ํ๋ค.
ํ์ผ๋ช ์ ๊ธ์ ์๋ฅผ ์ ํํ์ฌ ํ์ผ๋ช ์ด input ๋ฐ์ค ๋ด์์ ์๋ฆฌ์ง ์๊ฒ ์ถ๋ ฅํด์ผ ํ๋ค.
ํ์ผ๋ช ์ ํ๊ธ์ด ์๋ ๊ฒฝ์ฐ, ํ๊ธ์ ๋ชจ์/์์ ๋จ์๋ก length ๊ฐ ๊ณ์ฐ๋๊ณ ์์๋ค.
์๋ฅผ ๋ค์ด, ํ์ผ๋ช ์ด "์moya" ๋ผ๊ณ ํ๋ค๋ฉด, ์ ๋ผ๋ ๊ธ์์ length ๋ 1๋ก ์ฒ๋ฆฌ๋์ด์ผ ํ์ง๋ง 'ใ ' ๊ณผ 'ใ ' ๊ฐ ๊ฐ๊ฐ ๊ณ์ฐ๋์ด ๊ธธ์ด๊ฐ 2๋ก ์ถ๋ ฅ๋๋ค. ํ์ผ๋ช ๊ฐ์ด ๋ ๋ณ์๋ฅผ ์ ๋์ฝ๋ ์ ๊ทํ(normalize) ํด์ฃผ๋ ํ๊ธ length ๊ธธ์ด๊ฐ 1๋ก ์ฒ๋ฆฌ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
// ํ์ผ๋ช
์ ๊ทํ
var fileName = orgFileName.normalize('NFC');
์ฌ์ฉ์๋ก๋ถํฐ ๊ธ์๋ฅผ ์ ๋ ฅ๋ฐ์ ๊ฒฝ์ฐ, ๊ธ์ ์๋ฅผ ์ ํํ ํ์๊ฐ ์์ ๋ normalize ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.
์ฐธ๊ณ ํ ๋ธ๋ก๊ทธ๋ ์๋์ ๊ฐ๋ค.
[๋ฒ์ญ] ์ ๋์ฝ๋ ๋ฌธ์์ด์ ์ ๊ทํ ํด์ผํ๋ ์ด์
์์ : Alessandro Segala - When "Zoë" !== "Zoë". Or why you need to normalize Unicode strings > ์๋ณธ ๊ฒ์๋ฌผ ๋งํฌ: https://withblue.ink/2019/03/11/why-you-need-to-normalize-unicode-strings.html ๊ฐ๋ฐ์ ํ๋ค๋ณด๋ฉด ์ธ์ ๊ฐ ํ ๋ฒ...
velog.io
'JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
window.postMessage ๋ก ์๋์ฐ ์ปจํธ๋กค ํ๊ธฐ (0) | 2022.08.17 |
---|---|
window ๊ฐ์ฒด๋ ๋ฌด์์ธ๊ฐ? (0) | 2022.05.23 |
์กฐ๊ฑด๋ฌธ ์ค์ด๊ธฐ(feat. ํด๋ฆฐ ์ฝ๋) (0) | 2022.05.20 |
Babel ์ด๋? (0) | 2022.05.11 |
addEventListener ์ด๋ฒคํธ (input & change) (0) | 2022.04.25 |
๋๊ธ