UTF-8
UTF-8 (Unicode Transformation Format 8-bit)
Bảng mã ký tự chủ đạo trên web, có khả năng biểu diễn mọi ký tự trong tiêu chuẩn Unicode sử dụng một đến bốn byte mỗi ký tự trong khi vẫn tương thích ngược với ASCII.
Chi tiết kỹ thuật
UTF-8 là bảng mã có chiều rộng thay đổi: ký tự ASCII (U+0000 đến U+007F) sử dụng một byte giống hệt giá trị ASCII, khiến mọi văn bản ASCII đều là UTF-8 hợp lệ. Hai byte bao phủ tiếng Latin, Hy Lạp, Kirin và Ả Rập (U+0080-U+07FF), ba byte bao phủ hầu hết ký tự CJK (U+0800-U+FFFF), và bốn byte xử lý emoji và chữ viết hiếm (U+10000-U+10FFFF). Hơn 98% trang web sử dụng UTF-8. BOM (Byte Order Mark, EF BB BF) là tùy chọn và thường không được khuyến khích trừ trong ngữ cảnh Windows.
Ví dụ
```javascript
// UTF-8: file processing example
const file = document.getElementById('fileInput').files[0];
const reader = new FileReader();
reader.onload = (e) => {
const data = e.target.result;
console.log(`Loaded: ${file.name} (${file.size} bytes)`);
};
reader.readAsArrayBuffer(file);
```