Chaînes JavaScript

Les chaînes de caractères JavaScript sont utilisées pour stocker et manipuler du texte.

Chaînes JavaScript

Les chaînes de caractères JavaScript sont zéro ou plusieurs caractères entre guillemets.

Exemple

var x = \"Bill Gates\";

Essayez-le vous-même

Vous pouvez utiliser des guillemets simples ou doubles :

Exemple

var carname = \"Porsche 911\";
var carname = 'Porsche 911';

Essayez-le vous-même

Vous pouvez utiliser des guillemets dans une chaîne de caractères, tant qu'ils ne correspondent pas aux guillemets entourant la chaîne :

Exemple

var answer = \"It's good to see you again!\";
var answer = \"He is called 'Bill'\";
var answer = 'He is called \"Bill\"';

Essayez-le vous-même

Longueur de la chaîne de caractères

Propriété intégrée length Peut retourner la longueur d'une chaîne de caractèresLongueur:

Exemple

var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;

Essayez-le vous-même

Caractères spéciaux

Comme les chaînes de caractères doivent être entourées de guillemets, JavaScript interprète cette chaîne de manière incorrecte :

var y = "La Chine est la patrie de la porcelaine, donc china et"China (Chine)"a le même nom."

Cette chaîne sera coupée en "La Chine est la patrie de la porcelaine, donc china et".

Pour éviter ce problème, il est recommandé d'utiliser \ Caractère d'échappement.

Les caractères d'échappement inversent les caractères spéciaux en caractères de chaîne :

Code Résultat Description
\' ' Guillemet
\" " Guillemets doubles
\\\ \ Antislash

Exemple

Séquence \" Insérer des guillemets doubles dans une chaîne :

Exemple

var x = "La Chine est l'origine de la porcelaine, donc china a le même nom que \"China (Chine)\"."

Essayez-le vous-même

Séquence \' Insérer une guillemet simple dans une chaîne :

Exemple

var x = 'It\'s good to see you again';

Essayez-le vous-même

Séquence \\\ Insérer un antislash dans une chaîne :

Exemple

var x = "Le caractère \\ est appelé antislash.";

Essayez-le vous-même

Caractères d'échappement (\) peuvent également être utilisées pour insérer d'autres caractères spéciaux dans une chaîne.

Autres six séquences d'échappement valides dans JavaScript :

Code Résultat
\b Retour arrière
\f Page suivante
\n Nouvelle ligne
\r Retour chariot
\t Tabulation horizontale
\v Tabulation verticale

Ces six caractères d'échappement ont été initialement conçus pour contrôler les machines à écrire, les télécopieurs et les télécopieurs. Ils n'ont aucune signification dans HTML.

Briser une ligne de code longue

Pour une lisibilité optimale, les programmeurs évitent généralement que chaque ligne de code dépasse 80 caractères.

Si une instruction JavaScript ne s'adapte pas à une ligne entière, le meilleur endroit pour briser la ligne est après un opérateur :

Exemple

document.getElementById("demo").innerHTML =
"Hello Kitty.";

Essayez-le vous-même

Vous pouvez égalementdans une chaîne de caractèresUn retour à la ligne peut être effectué via un antislash :

Exemple

document.getElementById("demo").innerHTML = "Hello \
Kitty!";

Essayez-le vous-même

\ Cette méthode n'est pas une norme ECMAScript (JavaScript).

Certains navigateurs ne permettent pas non plus \ un espace après le caractère.

La manière la plus sécurisée de briser une chaîne de caractères longue (mais un peu lente) est d'utiliser l'addition de chaînes :

Exemple

document.getElementById("demo").innerHTML = "Hello" + 
"Kitty!";

Essayez-le vous-même

Vous ne pouvez pas briser une ligne de code avec un antislash :

Exemple

document.getElementById("demo").innerHTML = \ 
"Hello Kitty!";

Essayez-le vous-même

Les chaînes de caractères peuvent être des objets

En règle générale, les chaînes de caractères JavaScript sont des valeurs primitives, créées de manière littérale :

var firstName = "Bill"

Mais les chaînes de caractères peuvent également être définies via le mot-clé new Défini comme objet :

var firstName = new String("Bill")

Exemple

var x = "Bill";
var y = new String("Bill");
// typeof x retourne string
// typeof y retourne object

Essayez-le vous-même

Ne créez pas de chaînes en tant qu'objets. Cela ralentira l'exécution.

new Le mot-clé complique le code. Peut également entraîner des résultats inattendus :

Lors de l'utilisation de l'opérateur de comparaison égal : == Lors de l'utilisation de l'opérateur égal égal, les chaînes égales sont égales :

Exemple

var x = "Bill";             
var y = new String("Bill");
// (x == y) est vrai, car les valeurs de x et y sont égales

Essayez-le vous-même

Lors de l'utilisation de l'opérateur de comparaison égal : === Lors de l'utilisation de l'opérateur de comparaison, les chaînes égales ne sont pas égales, car === Les opérateurs nécessitent que le type et la valeur soient identiques.

Exemple

var x = "Bill";             
var y = new String("Bill");
// (x === y) est faux, car les types de x et y sont différents (chaîne et objet)

Essayez-le vous-même

Même pire. Les objets ne peuvent pas être comparés :

Exemple

var x = new String("Bill");             
var y = new String("Bill");
// (x == y) est faux, car x et y sont des objets différents

Essayez-le vous-même

Exemple

var x = new String("Bill");             
var y = new String("Bill");
// (x === y) est faux, car x et y sont des objets différents

Essayez-le vous-même

Veuillez noter la différence entre (x==y) et (x===y).

Les objets JavaScript ne peuvent pas être comparés, la comparaison de deux JavaScript retournera toujours false.