Javascript
L'objet String
Home

Généralités

Revenons à l'objet String pour nous intéresser à la manipulation des caractères si utile pour l'aspect programmation de Javascript.

On signale dans la littérature une limitation de la longueur des strings à 50/80 caractères. Cette limitation du compilateur Javascript peut toujours être contournée par l'emploi de signes + et la concaténation.

Instruction Description
length C'est un entier qui indique la longueur de la chaîne de caractères.
charAt() Méthode qui permet d'accéder à un caractère isolé d'une chaîne.
indexOf() Méthode qui renvoie la position d'une chaîne partielle à partir d'une position déterminée.
(en commençant au début de la chaîne pricipale soit en position 0).
lastIndexOf() Méthode qui renvoie la position d'une chaîne partielle à partir d'une position déterminée.
(en commençant à la fin soit en position length moins 1).
substring(x,y) Méthode qui renvoie un string partiel situé entre l position x et la position y-1.
toLowerCase() Transforme toutes les lettres en minuscules.
toUpperCase() Transforme toutes les lettres en Majuscules.


 

La propriété length

La propriété length retourne un entier qui indique le nombre d'éléments dans une chaîne de caractères. Si la chaîne est vide (" "), le nombre est zéro.

La syntaxe est simple :

    x=variable.length;
    x=("chaîne de caractères").length;

La propriété length ne sert pas que pour les Strings, mais aussi pour connaître la longueur ou le nombre d'éléments :

  • de formulaires . Combien a-t-il de formulaires différents ?
  • de boutons radio. Combien a-t-il de boutons radio dans un groupe ?
  • de cases à cocher. Combien a-t-il de cases à cocher dans un groupe ?
  • d'options. Combien a-t-il d'options dans un Select ?
  • de frames. Combien a-t-il de frames "enfants" ?
  • d'ancres, de liens, etc.


 

La méthode CharAt()

Il faut d'abord bien noter que les caractères sont comptés de gauche à droite et que la position du premier caractère est 0. La position du dernier caractère est donc la longueur (length) de la chaîne de caractère moins 1;

chaîne :

position :
Javascript (longueur = 10)
||||||||||
0123456789
(longueur - 1)

Si la position que vous indiquer est inférieure à zéro ou plus grande que la longueur moins 1, Javascript retourne une chaîne vide.

La syntaxe de charAt() est :

    chaîne_réponse = chaîme_départ.charAt(x);

où x est un entier compris entre 0 et la longueur de la chaîne à analyser moins 1.

Notez les exemples suivants :

var str="Javascript";
var chr=str.charAt(0);
var chr="Javascript".charAt(0);
ou var chr=charAt(str,0);
ou var chr=charAt("Javascript",0);
La réponse est "J".
var str="Javascript";
var chr=str.charAt(9);
var chr=charAt(str,9);
La réponse est "t".
var str="Javascript";
var chr=charAt(str,13);
La réponse est ""
soit vide.


 

La méthode indexOf()

Cette méthode renvoie la position, soit x, d'un string partiel (lettre unique, groupe de lettres ou mot) dans une chaîne de caractères en commençant à la position indiquée par y. Cela vous permet, par exemple, de voir si une lettre, un groupe de lettres ou un mot existe dans une phrase.

    variable="chaîne_de_caractères";
    var="string_partiel";
    x=variable.indexOf(var,y);

où y est la position à partir de laquelle la recherche (de gauche vers la droite) doit commencer. Cela peut être tout entier compris entre 0 et la longueur - 1 de la chaîne de caractères à analyser.
Si y n'est pas spécifié, la recherche commencera par défaut à la position 0.

Si le string partiel n'est pas trouvé dans la chaîne de caractères à analyser, la valeur retournée sera égale à -1.

Quelques exemples :

variable="Javascript"
var="script"
x=variable.indexOf(var,0);
x vaut 4
variable="VanlanckerLuc&ccim.be"
var="@"
x=variable.indexOf(var);
x vaut -1


 

La méthode lastIndexOf()

Méthode fort semblable à indexOf() sauf que la recherche va cette fois de droite à gauche (en commençant donc par la fin).

La syntaxe ext en tous points identique sauf que y signale une position située vers la fin de la chaîne de caractères.

    x=variable.lastIndexOf(var,y);

Les exemples suivants montrent la différence entre index0f() et lastIndexOf() :

variable="Javascript"
var="a"
x=variable.indexOf(var,0); ici x vaut 1 soit la position du premier a.
x=variable.lastIndexOf(var,9); ici x vaut 3 soit la position du second a.

Notons que même lorsqu'on commence à lire de la fin de la chaîne, la position retournée est comptée depuis le début de la chaîne avec le comptage commençant à zéro.


 

La méthode substring()

La méthode substring() est du même genre que indexOf(), lastIndexOf() et charAt() que nous venons d'étudier. Elle sera particulièrement utile, par exemple, pour prendre différentes données dans une longue chaîne de caractères.

    variable = "chaîne de caractères"
    resultat=variable.substring(x,y)

où resultat est un sous ensemble de la chaîne de caractère (ou de la variable).

Les x et y sont des entiers compris entre 0 et la longueur moins 1 de la chaîne de caractères.
Si x est inférieur à y, la valeur retournée commence à la position x et se termine à la position Y-1.
Si x est supérieur à y, la valeur retournée commence à la position y et se termine à la position X-1.
En fait, ceci donne le même résultat et il est équivalent d'écrire par exemple substring(3,6) ou substring(6,3).

Si x est égal à y, substring() retourne une chaîne vide (logique, non?)

Vous souhaitez sûrement quelques exemples :

Javascript
||||||||||
0123456789

str="Javascript";

str1=str.substring(0,4);
str2="Javascript".substring(0,4);
str3=str.substring(6,9);

Les résultats sont :

str1="Java"; soit les positions 0,1,2 et 3.
str2="Java"; soit les positions 0,1,2 et 3.
str3="rip"; soit les positions 6,7 et 8


 

La méthode toLowerCase()

Cette méthode affiche toutes les majuscules d'une chaîne de caractères variable2 en minuscules.

    variable2="chaîne de caractères";
    variable1=variable2.toLowerCase();

Exemple :

str="JavaScript";
str1=str.toLowerCase();
str2="JavaScript".toLowerCase();

Le résultat sera :

str1="javascript";
str2="javascript";


 

La méthode toUpperCase()

Cette méthode affiche toutes les minuscules d'une chaîne de caractères variable2 en majuscules.

    variable2="chaîne de caractères";
    variable1=variable2.toUpperCase();

Exemple :

str="JavaScript";
str3=str.toUpperCase();
str4="JavasScript".toUpperCase();

Le résultat sera :

str3="JAVASCRIPT";
str4="JAVASCRIPT";


 

Utilité de toLowerCase() et de toUppercase()

L'utilité de ces 2 méthodes ne vous saute peut être pas aux yeux. Et pourtant, il faut se rappeler que Javascript est case sensitive. Ainsi une recherche sur Euro ne donnera pas le même résultat que sur euro ou EUro.

Ainsi, pour les bases de données, il est prudent de tout convertir en minuscules (ou en majuscules). A fortiori, pour certaines informations des utilisateurs introduites par le biais d'un formulaire.

Home