Mặc dù @ruakh đã đưa ra một câu trả lời tốt, tôi sẽ thêm một số lựa chọn thay thế cho đầy đủ:
Thực tế bạn có thể sử dụng ngay cả var Omega = 'Ω'
trong JavaScript, nhưng chỉ khi mã JavaScript của bạn là:
- bên trong một thuộc tính sự kiện, như trong
onclick="var Omega = 'Ω';
alert(Omega)"
hoặc
- trong một
script
phần tử bên trong tài liệu XHTML (hoặc XHTML + XML) được cung cấp cùng với loại nội dung XML.
Trong các trường hợp này, mã sẽ là lần đầu tiên (trước khi được chuyển đến trình thông dịch JavaScript) được phân tích cú pháp bởi trình phân tích cú pháp HTML để các tham chiếu ký tự như Ω
được nhận ra. Các hạn chế làm cho điều này một cách tiếp cận không thực tế trong hầu hết các trường hợp.
Bạn cũng có thể nhập ký tự như vậy, như trong var Omega = 'Ω'
, nhưng sau đó mã hóa ký tự phải cho phép, mã hóa phải được khai báo đúng và bạn cần phần mềm cho phép bạn nhập các ký tự đó. Đây là một giải pháp sạch và khá khả thi nếu bạn sử dụng mã hóa UTF-8 cho mọi thứ và sẵn sàng đối phó với các vấn đề do nó tạo ra. Mã nguồn sẽ có thể đọc được và đọc nó, bạn sẽ thấy ngay ký tự đó, thay vì các ký hiệu mã. Mặt khác, nó có thể gây bất ngờ nếu người khác bắt đầu làm việc với mã của bạn.
Sử dụng \u
ký hiệu, như trong var Omega = '\u03A9'
, hoạt động độc lập với mã hóa ký tự, và nó trong thực tế gần như phổ biến. Tuy nhiên, nó chỉ có thể được sử dụng tối đa U + FFFF, tức là tối đa \uffff
, nhưng hầu hết các nhân vật mà hầu hết mọi người từng nghe nói đều rơi vào khu vực đó. (Nếu bạn cần các ký tự cao hơn của Viking, bạn cần sử dụng các cặp thay thế hoặc một trong hai cách tiếp cận ở trên.)
Bạn cũng có thể xây dựng một ký tự bằng cách sử dụng String.fromCharCode()
phương thức, chuyển dưới dạng tham số số Unicode, theo số thập phân như trong var Omega = String.fromCharCode(937)
hoặc thập lục phân như trong var Omega = String.fromCharCode(0x3A9)
. Điều này hoạt động lên đến U + FFFF. Cách tiếp cận này có thể được sử dụng ngay cả khi bạn có số Unicode trong một biến.
var Omega = "Ω";
quá đơn giản?