J'ai besoin d'insérer un Omega (Ω) sur ma page html. J'utilise son code échappé HTML pour faire cela, donc je peux écrire Ω
et obtenir Ω. C'est très bien quand je le mets dans un élément HTML; cependant, quand j'essaye de le mettre dans mon JS, par exemple var Omega = Ω
, il analyse ce code comme JS et le tout ne fonctionne pas. Quelqu'un sait comment s'y prendre?
javascript
html
unicode
Feu bleu
la source
la source
var Omega = "Ω";
trop simple?Réponses:
Je suppose que vous voulez réellement
Omega
être une chaîne contenant un oméga majuscule? Dans ce cas, vous pouvez écrire:(Parce que Ω est le caractère Unicode avec le point de code U + 03A9 ; c'est-à-
03A9
dire937
, sauf écrit sous forme de quatre chiffres hexadécimaux.)la source
Bien que @ruakh ait donné une bonne réponse, j'ajouterai quelques alternatives pour être complet:
Vous pourriez en fait utiliser même
var Omega = 'Ω'
en JavaScript, mais uniquement si votre code JavaScript est:onclick="var Omega = 'Ω'; alert(Omega)"
ouscript
élément à l'intérieur d'un document XHTML (ou XHTML + XML) servi avec un type de contenu XML.Dans ces cas, le code sera d'abord (avant d'être passé à l'interpréteur JavaScript) analysé par un analyseur HTML afin que les références de caractères comme
Ω
soient reconnues. Les restrictions en font une approche peu pratique dans la plupart des cas.Vous pouvez également entrer le caractère Ω en tant que tel, comme dans
var Omega = 'Ω'
, mais le codage des caractères doit le permettre, le codage doit être correctement déclaré et vous avez besoin d'un logiciel qui vous permet de saisir ces caractères. C'est une solution propre et tout à fait faisable si vous utilisez le codage UTF-8 pour tout et êtes prêt à gérer les problèmes créés par celui-ci. Le code source sera lisible, et en le lisant, vous verrez immédiatement le caractère lui-même, au lieu des notations de code. D'un autre côté, cela peut provoquer des surprises si d'autres personnes commencent à travailler avec votre code.L'utilisation de la
\u
notation, comme dansvar Omega = '\u03A9'
, fonctionne indépendamment du codage des caractères, et elle est en pratique presque universelle. Il ne peut cependant être utilisé que jusqu'à U + FFFF, c'est-à-dire jusqu'à\uffff
, mais la plupart des personnages dont la plupart des gens ont entendu parler tombent dans ce domaine. (Si vous avez besoin de caractères «supérieurs», vous devez utiliser des paires de substitution ou l'une des deux approches ci-dessus.)Vous pouvez également construire un caractère à l'aide de la
String.fromCharCode()
méthode, en passant en paramètre le nombre Unicode, en décimal comme dansvar Omega = String.fromCharCode(937)
ou en hexadécimal comme dansvar Omega = String.fromCharCode(0x3A9)
. Cela fonctionne jusqu'à U + FFFF. Cette approche peut être utilisée même lorsque vous avez le numéro Unicode dans une variable.la source
U+FFFF
gamme. JavaScript a aussi, donc vous pouvez le faire.var poop = '\u{1F4A9}';
var lock = '\u{1F512}'
Et vous obtenez ceci: 🔓La réponse est correcte, mais vous n'avez pas besoin de déclarer une variable. Une chaîne peut contenir votre caractère:
Malheureusement, ces codes en ASCII sont encore nécessaires pour afficher UTF-8, mais j'attends toujours (depuis trop d'années ...) le jour où UTF-8 sera le même que ASCII l'était, et ASCII ne sera qu'un souvenir du passé.
la source
\u{1F641}
= 🙁