Pour définir une variable qui contient une chaîne de caractères il faut encadrer le texte par des apostrophes (single quote) ou des guillemets (double quote) :
Les deux déclarations suivantes sont équivalentes :
Avec des « single quote » :
var maChaine='mon message';
Avec des « double quote » :
var maChaine="mon message";
Dans une chaîne de caractères les positions des caractères sont numérotées en commençant à 0. Ainsi le premier caractère est en position 0, le second en position 1, etc.
Dans un programme, il est possible d'accéder à chaque caractère de la chaîne en indiquant sa position comme dans l'exemple suivant :
var nom=prompt("Entrez vote prénom");
print("La première lettre de votre prénom est : ");
println(nom[0]);
La première lettre de la chaîne de caractères est numérotée 0. Pour y accéder nous écrivons : nom[0]
.
De façon générale, pour accéder au caractère qui figure à une position donnée, il faut écrire le nom de la variable qui contient la chaîne de caractères suivi du numéro de la position entre crochets.
Une chaîne de caractères est un objet du langage JavaScript, c'est à dire qu'en plus de stocker les caractères, une chaîne de caractères contient des propriétés et des méthodes.
Par exemple, il existe une propriété qui indique le nombre de caractères de la chaîne, cette propriété s'appelle length
.
Observez comment nous utilisons la propriété length
dans le programme suivant :
var nom=prompt("Entrez vote prénom");
print("Votre prénom comporte ");
print(nom.length);
println(" caractères.");
Pour accéder à la propriété length
de la chaîne de caractères nous écrivons : nom.length
Notez bien que nom.length
est un nombre.
De manière générale, pour accéder à une propriété d'un objet il faut écrire le nom de la variable qui contient l'objet et accoler un point suivi du nom de la propriété.
Ecrire un programme qui demande à l'utilisateur de saisir son prénom et qui affiche toutes les lettres l'une en dessous de l'autre.
La concaténation de deux (ou plusieurs) chaînes de caractères consiste tout simplement à les mettre bout à bout.
Cette action correspond à l'addition des chaînes comme dans l'exemple de programme ci-dessous :
var prenom=prompt("Entrez votre prénom :");
var nom=prompt("Entrez votre nom :");
println("Bonjour "+prenom+" "+nom+" !");
Pour afficher le message, plutôt que d'écrire plusieurs instructions print
successives, nous utilisons l'opération d'addition sur les chaînes de caractères : les différents éléments sont ainsi mis bout à bout.
Notez bien la présence d'espaces pour éviter d'avoir des mots collés.
Voici un « squelette de programme » :
var chaine="";
var n=parseInt(prompt("Nombre de répetitions ?"));
...
println(chaine);
Ce programme demande la saisie d'un nombre, la chaîne de caractères entrée par l'utilisateur est convertie en nombre entier en utilisant l'instruction parseInt
. C'est la variable n qui reçoit ce nombre.
Compléter le programme pour qu'il affiche le mot « ISN » le nombre de fois spécifié par l'utilisateur. Vous n'avez pas le droit d'utiliser les instuctions print
ou println
, vous devez faire en sorte que la variable chaine
contienne le texte final à afficher.
Dans le vocabulaire du programmeur JavaScript, une chaîne de caractères est un objet String
et comme nous l'avons indiqué plus haut, il contient plusieurs méthodes.
Ces méthodes permettent pour la plupart d'obtenir de nouvelles chaînes de caractères construites à partir de la chaîne initiale.
Supposons que maChaine
soit une variable de type chaîne de caractères, le tableau ci-dessous montre quelques méthodes :
Instruction | Signification |
maChaine.toLowerCase() | donne la chaîne avec toutes les lettres en minuscule |
maChaine.toUpperCase() | donne la chaîne avec toutes les lettres en majuscule |
maChaine.trim() | donne la chaîne avec les espaces éventuels en début et fin supprimés |
maChaine.substring(a,b) | donne la chaîne de caractères entre les positions a et b, position b exclue |
maChaine.indexOf("toto") | donne la position de la première occurrence de "toto" |
Testez les différentes méthodes indiquées dans le tableau ci-dessus.
Pour afficher les caractères accentués dans du code javascript, il faut remplacer les caractères par leur valeur en octale, exemple :
é : \351 è : \350 ê : \352 à : \340
Voici une liste de caractères accentués ;
US-Kbd Octal Hex Unicode HTML Details Alt-" \242 A2 U+00A2 ¢ ¢ cent sign Alt-# \243 A3 U+00A3 £ £ Pound sign (British) Alt-$ \244 A4 U+20AC € € Euro sign (in ISO-8859-15) Alt-% \245 A5 U+00A5 ¥ ¥ Yen sign (Japanese) Alt-0 \260 B0 U+00B0 ° ° degrees Alt-< \274 BC U+00BC ¼ ¼ fraction one-quarter Alt-< \274 BC U+0152 Œ Œ OE ligature, French (in ISO-8859-15) Alt-= \275 BD U+00BD ½ ½ fraction one-half Alt-= \275 BD U+0153 œ œ oe ligature, French (in ISO-8859-15) Alt-> \276 BE U+00BE ¾ ¾ fraction three-quarters Alt-> \276 BE U+0178 Ÿ Ÿ Y diaeresis, French (in ISO-8859-15) Alt-! \241 A1 U+00A1 ¡ ¡ upside-down exclamation mark Alt-+ \253 AB U+00AB « « close (or open) chevron-style quotes Alt-; \273 BB U+00BB » » open (or close) chevron-style quotes Alt-? \277 BF U+00BF ¿ ¿ upside-down question mark Alt-@ \300 C0 U+00C0 À À capital A, grave accent Alt-A \301 C1 U+00C1 Á Á capital A, acute accent Alt-B \302 C2 U+00C2   capital A, circumflex accent Alt-C \303 C3 U+00C3 à à capital A, tilde Alt-D \304 C4 U+00C4 Ä Ä capital A, umlaut mark Alt-E \305 C5 U+00C5 Å Å capital A, ring Alt-F \306 C6 U+00C6 Æ Æ capital AE diphthong Alt-G \307 C7 U+00C7 Ç Ç capital C, cedilla Alt-H \310 C8 U+00C8 È È capital E, grave accent Alt-I \311 C9 U+00C9 É É capital E, acute accent Alt-J \312 CA U+00CA Ê Ê capital E, circumflex accent Alt-K \313 CB U+00CB Ë Ë capital E, umlaut mark Alt-L \314 CC U+00CC Ì Ì capital I, grave accent Alt-M \315 CD U+00CD Í Í capital I, acute accent Alt-N \316 CE U+00CE Î Î capital I, circumflex accent Alt-O \317 CF U+00CF Ï Ï capital I, umlaut mark Alt-P \320 D0 U+00D0 Ð Ð capital Eth, Icelandic Alt-Q \321 D1 U+00D1 Ñ Ñ capital N, tilde Alt-R \322 D2 U+00D2 Ò Ò capital O, grave accent Alt-S \323 D3 U+00D3 Ó Ó capital O, acute accent Alt-T \324 D4 U+00D4 Ô Ô capital O, circumflex accent Alt-U \325 D5 U+00D5 Õ Õ capital O, tilde Alt-V \326 D6 U+00D6 Ö Ö capital O, umlaut mark Alt-X \330 D8 U+00D8 Ø Ø capital O, slash Alt-Y \331 D9 U+00D9 Ù Ù capital U, grave accent Alt-Z \332 DA U+00DA Ú Ú capital U, acute accent Alt-[ \333 DB U+00DB Û Û capital U, circumflex accent Alt-\ \334 DC U+00DC Ü Ü capital U, umlaut mark Alt-] \335 DD U+00DD Ý Ý capital Y, acute accent Alt-^ \336 DE U+00DE Þ Þ capital THORN, Icelandic Alt-_ \337 DF U+00DF ß ß sz ligature, German Alt-` \340 E0 U+00E0 à à small a, grave accent Alt-a \341 E1 U+00E1 á á small a, acute accent Alt-b \342 E2 U+00E2 â â small a, circumflex accent Alt-c \343 E3 U+00E3 ã ã small a, tilde Alt-d \344 E4 U+00E4 ä ä small a, umlaut mark Alt-e \345 E5 U+00E5 å å small a, ring Alt-f \346 E6 U+00E6 æ æ small ae diphthong Alt-g \347 E7 U+00E7 ç ç small c, cedilla Alt-h \350 E8 U+00E8 è è small e, grave accent Alt-i \351 E9 U+00E9 é é small e, acute accent Alt-j \352 EA U+00EA ê ê small e, circumflex accent Alt-k \353 EB U+00EB ë ë small e, umlaut mark Alt-l \354 EC U+00EC ì ì small i, grave accent Alt-m \355 ED U+00ED í í small i, acute accent Alt-n \356 EE U+00EE î î small i, circumflex accent Alt-o \357 EF U+00EF ï ï small i, umlaut mark Alt-p \360 F0 U+00F0 ð ð small eth, Icelandic Alt-q \361 F1 U+00F1 ñ ñ small n, tilde Alt-r \362 F2 U+00F2 ò ò small o, grave accent Alt-s \363 F3 U+00F3 ó ó small o, acute accent Alt-t \364 F4 U+00F4 ô ô small o, circumflex accent Alt-u \365 F5 U+00F5 õ õ small o, tilde Alt-v \366 F6 U+00F6 ö ö small o, umlaut mark Alt-x \370 F8 U+00F8 ø ø small o, slash Alt-y \371 F9 U+00F9 ù ù small u, grave accent Alt-z \372 FA U+00FA ú ú small u, acute accent Alt-{ \373 FB U+00FB û û small u, circumflex accent Alt-| \374 FC U+00FC ü ü small u, umlaut mark Alt-} \375 FD U+00FD ý ý small y, acute accent Alt-~ \376 FE U+00FE þ þ small thorn, Icelandic \377 FF U+00FF ÿ ÿ small y, umlaut mark