Chuỗi JavaScript utf8

utf8. js là một bộ mã hóa/giải mã UTF-8 đã được thử nghiệm tốt được viết bằng JavaScript. Không giống như nhiều giải pháp JavaScript khác, nó được thiết kế để trở thành một bộ mã hóa/giải mã UTF-8 thích hợp. nó có thể mã hóa/giải mã bất kỳ giá trị điểm mã Unicode vô hướng nào, theo. Đây là một bản demo trực tuyến

Vui lòng rẽ nhánh nếu bạn thấy những cải tiến có thể

Cài đặt

Qua npm

npm install utf8

Trong một trình duyệt

<script src="utf8.js"></script>

trong nút. js

const utf8 = require('utf8');

API

utf8.encode(string)

Mã hóa bất kỳ chuỗi JavaScript đã cho nào (string) thành UTF-8 và trả về phiên bản được mã hóa UTF-8 của chuỗi. Nó báo lỗi nếu chuỗi đầu vào chứa giá trị không vô hướng, i. e. một người thay thế duy nhất. (Nếu bạn cũng cần có khả năng mã hóa các giá trị không vô hướng, hãy sử dụng WTF-8 để thay thế. )

// U+00A9 COPYRIGHT SIGN; see http://codepoints.net/U+00A9

utf8.encode('\xA9');

// → '\xC2\xA9'

// U+10001 LINEAR B SYLLABLE B038 E; see http://codepoints.net/U+10001

utf8.encode('\uD800\uDC01');

// → '\xF0\x90\x80\x81'

utf8.decode(byteString)

Giải mã bất kỳ chuỗi được mã hóa UTF-8 đã cho nào (byteString) thành UTF-8 và trả về phiên bản được giải mã UTF-8 của chuỗi. Nó báo lỗi khi phát hiện UTF-8 không đúng định dạng. (Nếu bạn cũng cần có khả năng giải mã các giá trị không vô hướng được mã hóa, hãy sử dụng WTF-8 để thay thế. )

utf8.decode('\xC2\xA9');

// → '\xA9'

 

utf8.decode('\xF0\x90\x80\x81');

// → '\uD800\uDC01'

// → U+10001 LINEAR B SYLLABLE B038 E

utf8.version

Một chuỗi đại diện cho số phiên bản ngữ nghĩa

Ủng hộ

utf8. js đã được thử nghiệm trong ít nhất Chrome 27-39, Firefox 3-34, Safari 4-8, Opera 10-28, IE 6-11, Node. js v0. 10. 0, kỳ lân biển 0. 3. 2, RingoJS 0. 8-0. 11, PhantomJS 1. 9. 0 và tê giác 1. 7RC4

Kiểm tra đơn vị và bảo hiểm mã

Sau khi sao chép kho lưu trữ này, hãy chạy

<script src="utf8.js"></script>

0 để cài đặt các phụ thuộc cần thiết cho quá trình phát triển và thử nghiệm. Bạn có thể muốn cài đặt Istanbul trên toàn cầu bằng cách sử dụng

<script src="utf8.js"></script>

1

Khi đã xong, bạn có thể chạy thử nghiệm đơn vị trong Node bằng cách sử dụng

<script src="utf8.js"></script>

2 hoặc

<script src="utf8.js"></script>

3. Để chạy thử nghiệm trong Rhino, Ringo, Narwhal, PhantomJS và cả trình duyệt web, hãy sử dụng

<script src="utf8.js"></script>

4

Để tạo báo cáo phạm vi mã, hãy sử dụng

<script src="utf8.js"></script>

5

Câu hỏi thường gặp

Tại sao bản phát hành đầu tiên có tên là v2. 0. 0?

Rất lâu trước utf8. js đã được tạo, mô-đun

<script src="utf8.js"></script>

6 trên npm đã được đăng ký và sử dụng bởi một thư viện (hơi lỗi) khác. @ryanmcgrath đã rất tử tế khi cấp cho tôi quyền truy cập vào gói

<script src="utf8.js"></script>

6 vào npm khi tôi nói với anh ấy về utf8. js. Vì đã có v1 rồi. 0. 0 của thư viện cũ và để tránh phá vỡ khả năng tương thích ngược với các dự án dựa trên gói npm

<script src="utf8.js"></script>

6, tôi đã quyết định gắn thẻ bản phát hành đầu tiên của utf8. js dưới dạng v2. 0. 0 và lấy nó từ đó

Các chuỗi JavaScript có phải là UTF không

Chuỗi JavaScript được mã hóa bằng UTF-16 (hoặc UCS-2, tùy thuộc vào cách triển khai; đó là một điểm khác biệt không có nhiều khác biệt). Do đó, mọi vị trí chuỗi đề cập đến 16 bit dữ liệu hoặc 2 byte.

UTF là gì

UTF-8 có thể đại diện cho bất kỳ ký tự nào trong tiêu chuẩn Unicode . UTF-8 tương thích ngược với ASCII. UTF-8 là mã hóa ưa thích cho e-mail và các trang web. UTF-16. Định dạng chuyển đổi Unicode 16-bit là mã hóa ký tự có độ dài thay đổi cho Unicode, có khả năng mã hóa toàn bộ danh mục Unicode.

Làm thế nào để UTF

The way to solve it would be to add an appropriate meta tag like and XML declaration like .

Cách chuyển đổi chuỗi thành UTF

Để chuyển đổi Chuỗi thành UTF-8, chúng tôi sử dụng phương thức getBytes() trong Java . Phương thức getBytes() mã hóa một Chuỗi thành một chuỗi byte và trả về một mảng byte. trong đó charsetName là bộ ký tự cụ thể mà Chuỗi được mã hóa thành một mảng byte.