length, le retour
Description
Notre fameuse propriété
length contient la longueur de la chaîne de caractère, autrement dit, le nombre de caractères dont cette chaîne est composée.
Exemple
Code : JavaScript | var chaine = "J'aime le JavaScript";
alert(chaine.length);
var longueur = "JavaScript".length;
alert(longueur);
|
Cet exemple affichera successivement
20 (nombre de caractères dans la phrase "
J'aime le JavaScript", espaces compris) et
10 (il y a bien 10 lettres dans le mot "
JavaScript").
charAt(i)
Description
La méthode
charAt(i) renvoie le caractère qui se trouve à la position
i de la chaîne.
Pour rappel, le premier caractère porte le numéro 0.
Le dernier a donc le numéro length-1 !
Exemple
Ceci affichera la lettre
S :
Code : JavaScript | alert("JavaScript".charAt(4));
|
Voici une fonction qui sépare tous les caractères par un espace.
Pour cela, on parcourt la chaîne, et on recopie chaque caractère en ajoutant un espace.
Le test affichera : "
V i v e - l e - J a v a S c r i p t ".
Code : JavaScript | function separer(chaine)
{
var sortie = '';
for(var i=0; i<chaine.length; i++)
sortie += chaine.charAt(i) + ' ';
return sortie;
}
alert(separer('Vive-le-JavaScript'));
|
indexOf(str) et lastIndexOf(str)
Description
Ces deux méthodes sont assez utiles.
- indexOf(str) renvoie la position de str dans la chaîne de caractères.
Si str apparaît plusieurs fois, c'est la position de la première occurrence qui est renvoyée.
- lastIndexOf(str) renvoie de même la position de str.
La différence, c'est que si str apparaît plusieurs fois, c'est cette fois ci la position de la dernière occurrence qui est renvoyée.
Si ces méthodes ne trouvent pas str, elles retournent -1.
On peut donc les utiliser pour savoir si une chaîne de caractère contient une autre chaîne.
On peut préciser, en deuxième argument, la position a partir de laquelle doit commencer la recherche.
Par défaut, il s'agit de 0 pour indexOf (le premier caractère), et de length-1 pour lastIndexOf (le dernier caractère, car la recherche se fait en partant de la fin).
Exemple
On recherche "
script" dans "
JavaScript".
Ceci affichera
Non, en raison de la majuscule !
Code : JavaScript | var chaine = "JavaScript";
if(chaine.indexOf("script") == -1)
alert("Non");
else
alert("Oui");
|
Exemple : vérifier la vraisemblance d'une adresse e-mail
On s'occupe ici de la présence d'un
@ et d'un point
On récupère, grâce à nos deux fonction, la position du premier
@ et du dernier point.
La fonction doit renvoyer
true quand le
@ est après le premier caractère (le n°0), et quand le point est au moins deux caractères après le
@.
L'adresse la plus courte qui est considérée comme correcte est donc :
x@x.x
Code : JavaScript | function verifMail(email)
{
var position_at = email.indexOf('@');
var position_dot = email.lastIndexOf('.');
return (position_at > 0 && position_dot >= position_at + 2);
}
if(verifMail("mon.adresse@bon.net"))
alert("On dirait une adresse valide");
else
alert("L'adresse e-mail n'existe pas");
|
toLowerCase() et toUpperCase()
Description
JavaScript met à disposition deux méthodes permettant d'en changer la casse d'une chaîne de caractères :
- toLowerCase() : renvoie toute la chaîne en minuscules
- toUpperCase() : renvoie toute la chaîne en majuscules
Ces méthodes sont très utiles dans le traitement des chaînes de caractères.
Elle permettent par exemple de comparer des chaînes sans tenir compte de la casse.
Exemple
Cet exemple affichera "
salut tout le monde".
Code : JavaScript | var chaine = 'SaLut TouT LE mOnDe';
var chaineMin = chaine.toLowerCase();
alert(chaineMin);
|
Comparons maitenant deux chaînes : le message sera "
Ces chaînes sont les mêmes, aux majuscules près".
Code : JavaScript | var chaine1 = "JavaScript";
var chaine2 = "javascript";
if(chaine1 == chaine2)
alert("Ces chaînes sont exactement les mêmes");
else if(chaine1.toLowerCase() == chaine2.toLowerCase())
alert("Ces chaînes sont les mêmes, aux majuscules près");
else
alert("Ces chaînes sont différentes");
|