オメガ(Ω)をHTMLページに挿入する必要があります。そのためにHTMLエスケープコードを使用しているので、Ω
Ωを記述して取得できます。私がそれをHTML要素に入れると、それで問題ありません。しかし、それを私のJSに挿入しようとすると、たとえばvar Omega = Ω
、そのコードがJSとして解析され、全体が機能しません。誰もがこれについてどうやって行くか知っていますか?
オメガ(Ω)をHTMLページに挿入する必要があります。そのためにHTMLエスケープコードを使用しているので、Ω
Ωを記述して取得できます。私がそれをHTML要素に入れると、それで問題ありません。しかし、それを私のJSに挿入しようとすると、たとえばvar Omega = Ω
、そのコードがJSとして解析され、全体が機能しません。誰もがこれについてどうやって行くか知っていますか?
回答:
私はあなたが実際に大文字のオメガを含む文字列になりたいOmega
と思いますか?その場合、次のように書くことができます:
var Omega = '\u03A9';
(ΩはコードポイントU + 03A9のUnicode文字であるため、つまり、4桁の16進数として書かれて03A9
いる937
場合を除き、です。)
@ruakhは良い答えを出しましたが、完全を期すためにいくつかの代替案を追加します。
実際にvar Omega = 'Ω'
はJavaScript でも使用できますが、JavaScriptコードが次の場合のみです。
onclick="var Omega = 'Ω';
alert(Omega)"
またはなどのイベント属性内script
XMLコンテンツタイプで提供されるXHTML(またはXHTML + XML)ドキュメント内の要素内。これらの場合、コードは最初に(JavaScriptインタープリターに渡される前に)HTMLパーサーによって解析され、などの文字参照Ω
が認識されます。制限により、ほとんどの場合、これは非現実的なアプローチになります。
のようにΩ文字を入力することもできますがvar Omega = 'Ω'
、その場合は文字エンコーディングで許可されている必要があり、エンコーディングを適切に宣言する必要があります。また、そのような文字を入力できるソフトウェアが必要です。これはすっきりしたソリューションであり、すべてにUTF-8エンコーディングを使用し、それによって生じる問題に対処する準備ができている場合は非常に実現可能です。ソースコードは読み取り可能で、それを読み取ると、コード表記ではなく、文字自体がすぐに表示されます。一方、他の人があなたのコードで作業を始めた場合、それは驚きを引き起こすかもしれません。
のように\u
表記法を使用するとvar Omega = '\u03A9'
、文字エンコーディングとは関係なく機能し、実際にはほとんど普遍的です。ただし、U + FFFFまで、つまりまでしか使用できません\uffff
が、ほとんどの人が聞いたことのあるほとんどのキャラクターがこの領域に分類されます。(「より高い」文字が必要な場合は、サロゲートペアまたは上記の2つの方法のいずれかを使用する必要があります。)
String.fromCharCode()
メソッドを使用して文字を作成し、のように10進数var Omega = String.fromCharCode(937)
またはのように16進数でUnicode番号をパラメーターとして渡すこともできますvar Omega = String.fromCharCode(0x3A9)
。これはU + FFFFまで機能します。このアプローチは、変数にUnicode番号がある場合でも使用できます。
U+FFFF
範囲外で使用しています。JavaScriptにもあるので、これを行うことができます。var poop = '\u{1F4A9}';
var lock = '\u{1F512}'
そして、あなたはこの取得:🔓
答えは正しいですが、変数を宣言する必要はありません。文字列にはあなたの文字を含めることができます:
"This string contains omega, that looks like this: \u03A9"
残念ながら、UTF-8を表示するには、ASCIIのコードが必要ですが、UTF-8がASCIIと同じになる日が(あまりにも長い年月が経過しているため)まだ待っています。ASCIIは、過去。
\u{1F641}
=🙁
var Omega = "Ω";
単純すぎます?