Pemeriksa Karakter Unicode
Lihat titik kode, bita UTF-8/UTF-16, dan escape untuk setiap karakter
Tentang alat ini
Tempel teks apa pun dan lihat setiap karakter dibedah: titik kodenya (U+XXXX), bita UTF-8, unit UTF-16, urutan escape JavaScript, entitas HTML, dan kategori umumnya — plus total untuk titik kode, unit UTF-16, bita UTF-8, dan karakter sebagaimana dirasakan pengguna (klaster grafem).
Inilah alat untuk momen “kenapa string ini aneh sekali?”: karakter tak kasatmata (spasi lebar nol, BOM, penanda arah) muncul sebagai baris yang terlihat; karakter kembar (а Kiril versus a Latin) menyingkap titik kode yang berbeda; dan emoji yang “cuma satu karakter” ternyata tujuh titik kode yang disambung penggabung lebar nol.
Empat total panjang yang berbeda itu menjawab pertanyaan abadi: mengapa .length di JavaScript, batas bita di basis data, dan apa yang dilihat pengguna tak pernah sepakat soal panjang sebuah string.
Pertanyaan yang sering diajukan
- Kenapa "🎉".length === 2 di JavaScript?
- String JavaScript menghitung unit kode UTF-16. Karakter di atas U+FFFF — termasuk sebagian besar emoji — memerlukan pasangan pengganti, yaitu dua unit. Pemeriksa ini menampilkan baik unitnya maupun titik kode sebenarnya, dan ringkasannya menghitung keduanya secara terpisah.
- Apa itu klaster grafem?
- Apa yang dirasakan pembaca sebagai satu karakter. Huruf é bisa terdiri dari dua titik kode (e + aksen penggabung), dan emoji keluarga bisa berisi tujuh titik kode atau lebih yang disambung penggabung lebar nol. Hitungan grafem memakai Intl.Segmenter milik browser — yang paling mendekati “karakter sebagaimana dilihat pengguna”.
- Bagaimana cara menemukan karakter tak kasatmata di dalam string?
- Tempel saja di sini — setiap titik kode mendapat barisnya sendiri, termasuk spasi lebar nol (U+200B), spasi tanpa pemutus (U+00A0), BOM (U+FEFF), dan penanda arah, masing-masing berlabel kategorinya. Merekalah biang keladi klasik di balik string “identik” yang gagal saat dibandingkan.
- Apa yang diberitahukan urutan bita UTF-8 kepada saya?
- Persis apa yang akan disimpan atau dikirim: ASCII satu bita, sebagian besar perluasan Latin dua, CJK tiga, emoji empat. Kalau sebuah sistem memotong di tengah urutan, Anda akan mendapat karakter pengganti (�) — tampilan bita memperlihatkan di mana potongan semacam itu akan jatuh.