Auteur: Ludovic PATEY

Publié le 18 février 2008

Modifié le: 19 février 2008

Page d'accueil

La classe String

Vous êtes ici : Accueil / Cours / Cours de Javascript / Progresser en Javascript

Les chaînes de caractères sont omniprésentes en Javascript. Dès lors que l’on veut stocker du texte, on a recours à elles. Une chaîne de caractères n’est pas officiellement une instance de la classe String : l’opérateur instanceof renverra false. En revanche, on peut appeler sur elles toutes les méthodes de la classe String. Nous allons donc les assimiler.

Instanciation de la classe String

Il existe plusieurs manières d’instancier une chaîne de caractères : en faisant appel à son constructeur, ou en affectant directement du texte entre guillemets ou entre apostrophes à une variable :

// Syntaxe peu utilisée
var chaine1 = new String( 'Hello World' );

// Syntaxe réellement utilisée
var chaine2 = 'Hello World';

Propriétés de la classe String

PropriétéR/WDescription
lengthRRetourne le nombre de caractères de la chaîne

Méthodes de la classe String

MéthodeDescription
String anchor(String ancre) Retourne la chaîne encadrée par des balises <a name="ancre">></a>
String big() Retourne la chaîne encadrée par des balises <big></big>
String blink() Retourne la chaîne encadrée par des balises <blink></blink>
String bold() Retourne la chaîne encadrée par des balises <b></b>
String charAt( int position )Retourne le caractère à la position position
int charCodeAt( int position)Retourne le code UNICODE du caractère à la position position
String concat( String [,String...]Retourne la chaîne concaténée avec celles passées en paramètres
String fixed() Retourne la chaîne encadrée par des balises <tt></tt>
String fontcolor( String color )Retourne la chaîne encadrée par les balises <font color="ma_couleur"></font>
String fontsize( mixed size)Retourne la chaîne encadrée par les balises <font size="ma_taile"></font>
String fromCharCode( [int code, ... ] )Retourne la chaîne composée des caractères correspondant aux codes UNICODE passés en paramètres.
int indexOf( String sous-chaîne )Retourne la position de la première occurrence de sous-chaîne dans la chaîne
String italics() Retourne la chaîne encadrée par des balises <i></i>
int lastIndexOf( String sous-chaîne )Retourne la position de la dernièreoccurrence de sous-chaîne dans la chaîne
String link(String url) Retourne la chaîne encadrée par des balises <a href="url">></a>
String small() Retourne la chaîne encadrée par des balises <small></small>
String strike() Retourne la chaîne encadrée par des balises <strike></strike>
String sub() Retourne la chaîne encadrée par des balises <sub></sub>
String substr( int position [, int longueur] )Retourne la sous-chaîne de longueur longueur à partir de la position position. La position peut être négative, se positionnant alors par rapport à la droite.
String substring( int position1, int position2)Retourne la sous-chaîne entre les positions position1 et position2.
String sup() Retourne la chaîne encadrée par des balises <sup></sup>
String toLowerCase()Retourne la chaîne en minuscules
String toUpperCase()Retourne la chaîne en majuscules
String valueOf()Retourne la chaîne

Le caractère d’échappement

Votre chaîne de caractère est encadrée par des guillemets ou des apostrophes. Il peut arriver de vouloir insérer des guillemets ou des apostrophes dans une chaîne. Pour cela, il suffit de les précéder par un antislash : l’antislash est ce qu’on appelle le caractère d’échappement.

var chaine1 = 'Aujourd\'ui';
var chaine2 = "Nous avons dit \"Ajourd'hui\"";

Caractères spéciaux

Il est possible d’insérer des caractères spéciaux dans une chaîne, comme des tabulations, des retours à la ligne... Nous avons pour cela recours à l’antislash comme caractère d’échappement. Voici un tableau des caractères spéciaux disponibles :

SéquenceValeur
\nNouvelle ligne (linefeed, LF ou 0x0A (10) en ASCII)
\rRetour à la ligne (carriage return, CR ou 0x0D (13) en ASCII)
\tTabulation horizontale (HT ou 0x09 (9) en ASCII)
\\Anti-slash
\[0-7]1,3Une séquence de caractères qui permet de rechercher un nombre en notation octale.
\x[0-9A-Fa-f]1,2Une séquence de caractères qui permet de rechercher un nombre en notation hexadécimale.

Exemple :

/* Affiche
Hello
World
*/

alert( "Hello\nWorld" );

// Affiche 'Bonjour' en effet, le code ASCII du B est 42 en hexa
alert( "\x42onjour" );

Commentaires

Auteur :

Message :