유니코드/문자 코드 대조표
문자를 입력하면 유니코드 코드 포인트, UTF-8 바이트 시퀀스, JavaScript/HTML/URL/CSS 이스케이프 표현을 한눈에 비교할 수 있는 무료 도구입니다. 모든 처리는 브라우저 내에서 완료됩니다.
주요 문자 코드 대조표
| 문자 | 코드 포인트 | UTF-8 | 비고 |
|---|---|---|---|
| A | U+0041 | 41 | 대문자 (ASCII, 1바이트) |
| 0 | U+0030 | 30 | 숫자 (ASCII, 1바이트) |
| ␣ | U+0020 | 20 | 공백 (ASCII, 1바이트) |
| ! | U+0021 | 21 | 느낌표 (ASCII 기호, 1바이트) |
| @ | U+0040 | 40 | 골뱅이 기호 (ASCII 기호, 1바이트) |
| © | U+00A9 | C2 A9 | 저작권 기호 (Latin-1 보충, 2바이트) |
| € | U+20AC | E2 82 AC | 유로 기호 (3바이트) |
| → | U+2192 | E2 86 92 | 오른쪽 화살표 (화살표 블록, 3바이트) |
| あ | U+3042 | E3 81 82 | 히라가나 문자 (3바이트) |
| 漢 | U+6F22 | E6 BC A2 | CJK 통합 한자 (3바이트) |
| 한 | U+D55C | ED 95 9C | 한글 음절 (3바이트) |
| 😀 | U+1F600 | F0 9F 98 80 | 이모지 (BMP 밖, 4바이트, JS에서는 서로게이트 쌍으로 표현) |
사용 팁
- 입력란에 여러 문자를 입력할 수 있으며, 이 경우 입력란 아래에 문자별로 결과 블록이 나뉘어 표시됩니다.
- 😀과 같은 이모지는 유니코드의 기본 다국어 평면(BMP, U+0000~U+FFFF) 밖에 있어, JavaScript 문자열 내부에서는 두 개의 코드 유닛(서로게이트 쌍)으로 표현됩니다. "JavaScript 이스케이프" 행에 `\uXXXX`가 두 개 나타나는 것은 이 때문입니다.
- CSS 이스케이프(`\41` 등)는 코드 포인트의 16진수를 접두사 없이 그대로 적으며, 뒤에 16진수로 오인될 수 있는 문자가 이어질 경우 끝에 공백을 하나 넣는 것이 안전합니다.
- 브라우저는 10진수(`A`)와 16진수(`A`) HTML 엔티티를 동일하게 해석하므로 마크업에 편한 쪽을 선택하면 됩니다.
- 각 행의 복사 버튼을 사용하면 값을 바로 클립보드에 복사해 코드나 CSS에 붙여넣을 수 있습니다.
자주 묻는 질문
여담 ― 뿔뿔이 흩어진 문자 코드를 통일한 유니코드
유니코드가 등장하기 전, 컴퓨터의 문자 코드는 국가와 언어마다 제각각이었습니다. 일본어 텍스트만 하더라도 Shift_JIS, EUC-JP, JIS 코드 등 여러 방식이 공존했고, 서로 다른 인코딩을 쓰는 시스템 간에 텍스트를 주고받으면 글자가 깨지는 일이 자주 일어났습니다. 1991년 공개된 유니코드 1.0은 전 세계에서 사용되는 모든 문자에 단일한 번호(코드 포인트)를 부여함으로써 이런 혼란을 해소하고자 했습니다.
유니코드와 국제 표준인 ISO/IEC 10646은 처음에는 어느 정도 독립적으로 개발되었지만, 이후 서로 협력하여 동일한 문자 목록과 코드 포인트 할당을 공유하게 되었습니다. 오늘날 유니코드는 이모지를 포함해 15만 자가 넘는 문자를 수록하고 있으며, 매년 새 버전이 공개되어 문자가 계속 추가되고 있습니다.
UTF-8은 1992년 켄 톰프슨(Ken Thompson)과 롭 파이크(Rob Pike)가 설계한 인코딩 방식으로, ASCII 텍스트와 완전한 하위 호환성을 유지하면서도 모든 유니코드 문자를 표현할 수 있다는 점이 획기적이었습니다. 이 설계 덕분에 UTF-8은 웹 문서 인코딩의 사실상 표준으로 자리 잡았습니다.