Liste des cours Liste des chapitres

L'objet String

Créé le 04 Juillet 2008, par Anis Safine

Tout comme l'objet Math, vous ne pourrez pas éviter d'utiliser ne serait-ce qu'une ou deux fois l'objet String ! Ce chapitre liste les propriétés et méthodes de cet objet !

Si vous ne connaissez pas l'objet String, lisez le chapitre sur les objets.

Remonter

1. Les propriétés

Soit une variable "chaine" comportant une chaine de caractère quelconque.


chaine.length

Cette propriété renvoi le nombre de caractères qui composent "chaine". Voici un exemple simple :

Code javascript

var chaine = "Bonjour, je m'appelle Anis !";
document.write(chaine.length); // Affiche 28


Attention ! Tous les caractères sont comptés, même les espaces !

Attention également à ne pas essayer de modifier la valeur de cette propriété : vous n'en avez pas le droit ! Notez cependant que même si vous essayiez (petits coquins ), cela ne générera aucune erreur.

Remonter

2. Les méthodes

Niveau méthode, l'objet String ne vous décevra pas ! Toujours en considérant une variable "chaine" contenant une chaîne de caractère :


chaine.charAt(position)

Cette méthode renvoi le caractère qui se trouve à la position "position" :

Code javascript

var chaine = "Bonjour, je m'appelle Anis !";
document.write(chaine.charAt(0)); // Affiche "B"
document.write(chaine.charAt(7)); // Affiche "r"


Attention, "nombre" doit être un entier et je rappelle que le premier caractère d'une chaîne est à la position 0.


chaine.indexOf(sousChaine, position)

Cette méthode recherche "sousChaine" dans "chaine" et retourne la position de la première occurrence(le premier résultat) trouvée ou -1 si aucune occurrence n'a été trouvée.

"position" est facultative. Si elle n'est pas précisée, la recherche se fait depuis le début de "chaine", sinon elle se fait à partir de "position" :

Code javascript

var chaine = "Bonjour, je m'appelle Anis !";

// Recherche de "j" dans toute la chaîne
document.write(chaine.indexOf("j")); // Affiche 3

// Recherche de "j" à partir de "je"
document.write(chaine.indexOf("j", 9)); // Affiche 9

// Recherche de "Anis" dans toute la chaîne
document.write(chaine.indexOf("Anis")); // Affiche 22

// Recherche de "anis" dans toute la chaîne
document.write(chaine.indexOf("anis")); // Affiche - 1


Comme le montre le dernier exemple, pensez à bien faire attention à la casse ! "anis" en minuscule n'existe pas dans "chaine", c'est pourquoi la recherche renvoi -1 !

Attention, comme pour la méthode charAt(), "position" doit être un entier ! D'ailleurs cet argument est facultatif ! Si vous ne précisez pas de "position", la recherche démarre depuis de le premier caractère de "chaine".


chaine.lastIndexOf(sousChaine, position)

Cette méthode fonctionne exactement comme charAt(), à la différence près que la recherche se fait de la fin de "chaine" au début. En bref, elle fonctionne à l'envers !

A part ça, c'est le même principe :

Code javascript

var chaine = "Bonjour, je m'appelle Anis !";

// Recherche de "j" dans toute la chaîne
document.write(chaine.lastIndexOf("j")); // Affiche 9

// Recherche de "j" à partir de "je"
document.write(chaine.lastIndexOf("j", 9)); // Affiche 9

// Recherche de "Anis" dans toute la chaîne
document.write(chaine.lastIndexOf("Anis")); // Affiche 22

// Recherche de "anis" dans toute la chaîne
document.write(chaine.lastIndexOf("anis")); // Affiche - 1


J'ai juste une remarque à faire pour les éventuels tordus ! La position retournée par lastIndexOf() est bien la position par rapport au début de "chaine" !


chaine.match(regex)

Je décrirais cette méthode quand nous aurons abordé les expressions régulières dans le cours.


chaine.replace(regex, sousChaine)

Même remarque que match(), cette méthode nécessite des connaissances en expressions régulières. Bientôt sûrement !


chaine.search(regex)

Encore et toujours les expressions régulières. Je décrirais également cette méthode un peu plus tard.


chaine.split(delimiteur, nombre)

Au risque d'en décevoir certains, cette méthode fait également appel aux expressions régulières...


chaine.substr(position, longueur)

Cette méthode permet d'extraire une partie de "chaine". La sous-chaîne extraite commence à partir du caractère se trouvant à la position "position" et a pour longueur... "longueur".

Ce qui donne :

Code javascript

var chaine = "Bonjour, je m'appelle Anis !";
var sous_chaine = chaine.substr(0, 7);
document.write(sous_chaine);


Je rappelle encore une fois que le premier caractère d'une chaîne se trouve à la position 0 et attention, "position" et "longueur" doivent être des entiers !

Mais je ne vous ai pas encore tout dit sur substr() :
- si position est négatif, l'extraction commence depuis la fin de "chaine" et pas depuis le début. -1 extrait le dernier caractère, -2 extrait les deux derniers caractères etc.

- "longueur" est facultative ! Si vous ne précisez pas de longueur, l'extraction se fait jusqu'à la fin de "chaine" !


chaine.toLowerCase()

Cette méthode retourne "chaine" tout en minuscule. Rien de bien compliqué !

Code javascript

var chaine = "BonJouR, Je M'AppelLe AniS !";
document.write(chaine.toLowerCase());




chaine.toUpperCase()

Cette méthode retourne "chaine" tout en majuscule. Encore une fois, c'est très simple :

Code javascript

var chaine = "BonJouR, Je M'AppelLe AniS !";
document.write(chaine.toUpperCase());

Remonter

Conclusion

Et vous savez tout (ou presque) sur l'objet String !