Javascript kiểm tra xem chuỗi có phải là utf 8 không
Dưới đây là 4 cách để tách một từ thành một mảng các ký tự. "Tách" là cách phổ biến nhất và mạnh mẽ hơn. Nhưng với việc bổ sung ES6, có nhiều công cụ hơn trong kho JS để sử dụng 🧰 Show
Tôi luôn thích xem tất cả các cách có thể để giải quyết vấn đề nào đó vì sau đó bạn có thể chọn cách tốt nhất cho trường hợp sử dụng của mình. Ngoài ra, khi bạn thấy nó bật lên trong cơ sở mã của ai đó, bạn sẽ hiểu nó một cách dễ dàng 👍
kịch bảnThay vì đi qua những ưu và nhược điểm của từng cách khác nhau. Để tôi chỉ cho bạn các tình huống khác nhau trong đó cái này được ưu tiên hơn cái kia Mảng ký tựNếu tất cả những gì bạn đang làm là muốn tách chuỗi theo từng ký tự chuỗi, tất cả các cách đều tốt và sẽ cho bạn kết quả tương tự
Dấu phân cách cụ thểNếu bạn muốn tách chuỗi của mình theo một ký tự cụ thể, thì 3 là cách tốt nhất
Các cách khác chỉ bị giới hạn bởi mỗi ký tự chuỗi Có thể bạn quan tâm
Chuỗi chứa Biểu tượng cảm xúcNếu chuỗi của bạn chứa biểu tượng cảm xúc, thì 3 hoặc 5 có thể không phải là lựa chọn tốt nhất. Hãy xem điều gì sẽ xảy ra
Tuy nhiên, nếu chúng ta sử dụng những cách khác, nó hoạt động ________số 8_______ Điều này là do 3 phân tách các ký tự theo đơn vị mã UTF-16, điều này có vấn đề vì các ký tự biểu tượng cảm xúc là UTF-8. Nếu chúng ta nhìn vào biểu tượng cảm xúc yum của mình 7 thì nó thực sự được tạo thành từ 2 ký tự KHÔNG PHẢI 1 như chúng ta cảm nhận
Đây là cái được gọi là - khi người dùng cảm nhận nó là 1 đơn vị, nhưng thực tế nó được tạo thành từ nhiều đơn vị. Các phương thức mới hơn 8 và 9 được trang bị tốt hơn để xử lý các phương thức này và sẽ phân tách chuỗi của bạn theo cụm grapheme 👍Thông báo trước về const string = 'hi there'; const usingSplit = string.split(''); const usingSpread = [...string]; const usingArrayFrom = Array.from(string); const usingObjectAssign = Object.assign([], string); // Result // [ 'h', 'i', ' ', 't', 'h', 'e', 'r', 'e' ] 5 ⚠️Một điều cần lưu ý 5 là nó không thực sự tạo ra một mảng thuần túy. Hãy bắt đầu với định nghĩa của nó
Chìa khóa ở đó là "sao chép tất cả các thuộc tính riêng có thể đếm được". Vì vậy, những gì chúng tôi đang làm ở đây 2 nó sao chép TẤT CẢ các thuộc tính chuỗi của chúng tôi sang mảng mới của chúng tôi. Điều đó có nghĩa là chúng ta có một Array PLUS một số phương thức chuỗiKiểm tra TypeScript. Mảng kết quả không phải là kiểu const string = 'split-by-dash';
const usingSplit = string.split('-');
// [ 'split', 'by', 'dash' ]
|