English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base JavaScript

Objet JavaScript

Fonction JavaScript

DOM HTML JS

BOM du navigateur JS

Tutoriel de base AJAX

Manuel de référence JavaScript

Chaîne (String) JavaScript

Une chaîne est une séquence d'un ou plusieurs caractères, pouvant être composée de lettres, de chiffres ou de symboles.

Les chaînes de caractères en JavaScript sont de type de données primitives et immuables, ce qui signifie qu'elles sont invariables.

Les chaînes de caractères JavaScript

Les chaînes de caractères JavaScript sont constituées de zéro ou plusieurs caractères encadrés par des guillemets.

var x = "JavaScript tutorial ";
Voyons un test‹/›

Dans JavaScript, vous pouvez choisirGuillemet simpleouGuillemets doublesPour envelopper une chaîne de caractères. Les deux méthodes suivantes fonctionnent normalement :

var msg1 = "Hello world";   // Utiliser les guillemets doubles
var msg2 = 'Hello world';   // Utiliser les guillemets simples
Voyons un test‹/›

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

var str1 = 'She said \  // Guillemets doubles dans les guillemets simples
var str2 = "She said 'Hey' and left";  // Guillemets simples dans les guillemets doubles
var str3 = "Let's have a cup of tea";  // Guillemets simples dans les guillemets doubles
var str4 = 'We\'ll never give up'; // Utiliser les的反斜杠 pour échapper les guillemets simples
Voyons un test‹/›

La dernière méthode pour créer une chaîne de caractères est appeléeConstantes littérales (template literals).

La constante de modèle (template literal) utilise les guillemets inverses (` `), qui fonctionnent de la même manière que les chaînes de caractères classiques :

var x = `Cette chaîne de caractères utilise les guillemets inverses.`;
Voyons un test‹/›

Calculer la longueur de la chaîne de caractères

lengthLa propriété retourne la longueur de la chaîne de caractères. Pour une chaîne de caractères vide, la longueur est de 0.

var str = 'JavaScript tutorial ';
str.length;// return 15
Voyons un test‹/›

Attention :Les espaces sont également considérés comme des caractères.

Concaténation de chaînes de caractères

La concaténation signifie joindre deux ou plusieurs chaînes de caractères pour créer une nouvelle chaîne de caractères.

+ Les opérateurs sont utilisés pour ajouter (joindre) des chaînes de caractères.

var str1 = "quick brown fox";
var str2 = "over the lazy dog";
var str3 = "The " + str1 + " jumps " + str2;
Voyons un test‹/›

constante de modèle(template literal)Une fonction spéciale est capable d'inclure des expressions et des variables dans les chaînes de caractères. Il n'est pas nécessaire d'utiliser la concaténation, nous pouvons utiliser la syntaxe ${} pour insérer des variables.

var str1 = "quick brown fox";
var str2 = "over the lazy dog";
var str3 = `The ${str1} saute ${str2}.`;
Voyons un test‹/›

Dans ce cas, l'utilisation de la constante de modèle (template literal) pourrait être plus facile à écrire et plus pratique.

Séquence d'échappement

Les chaînes de caractères doivent être encadrées par des guillemets, sinon le contenu suivant produira une erreur car il fait confusion sur la fin de la chaîne de caractères :

var x = 'We'll never give up';
var y = "She said 'Hey' and left";

La séquence d'échappement signifie que nous les traitons pour nous assurer qu'elles sont reconnues comme texte et non comme une partie du code.

En JavaScript, nous réalisons cela en ajoutant un antislash () avant le caractère.

CodeRésultatDescription
\''Guillemet simple
\"""Guillemets doubles
\\\Barre oblique

Cette séquence \' insère une guillemet simple dans la chaîne :

Cette séquence \

var x = "She said \\
Voyons un test‹/›

Cette séquence \\ insère une barre oblique inverse dans la chaîne :

var x = "The character \\ is called backslash";
Voyons un test‹/›

Il existe d'autres six séquences d'échappement valides en JavaScript :

CodeDescription
\bTouche d'effacement
\fRetour à la page
\nNouvelle ligne
\rRetour chariot
\tTabulation horizontale
\vTabulation verticale

Pour les cas où les caractères ne peuvent pas être entrés à l'aide des touches du clavier, les séquences d'échappement sont également utiles.

Code long en virgule

Pour obtenir une lisibilité optimale, il est préférable d'éviter que les lignes de code ne dépassent80 caractères.

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

document.getElementById("para").innerHTML = "The sum of 20 et 30 est " +
sum;
Voyons un test‹/›

Écrire une chaîne très longue sur une ligne peut très rapidement devenir difficile à lire et à utiliser.

Nous pouvons utiliser l'opérateur de concaténation (+Pour afficher une chaîne sur plusieurs lignes.

var str = "La pollution de l'air est l'intrusion des substances chimiques dans " +
"La couche atmosphérique. Elle détruit l'équilibre environnemental et entraîne " +
"Plusieurs maladies.";
Voyons un test‹/›

En plus d'utiliser plusieurs chaînes, nous pouvons utiliser les caractères d'échappement \.

var str = "La pollution de l'air est l'intrusion des substances chimiques dans \
La couche atmosphérique. Elle détruit l'équilibre environnemental et entraîne \
Plusieurs maladies.";
Voyons un test‹/›

Attention :Cette méthode (\) n'est pas optimale, car elle peut entraîner des problèmes avec certains navigateurs et minifiers.

Pour rendre le code plus lisible, nous pouvons utiliserConstantes littérales (template literals)Les chaînes. Cela élimine le besoin de concaténation ou d'échappement de chaînes longues.

var str = `La pollution de l'air est l'intrusion des substances chimiques dans
La couche atmosphérique. Elle détruit l'équilibre environnemental et entraîne
Plusieurs maladies. `;
Voyons un test‹/›

Il est important de connaître toutes les méthodes pour créer des chaînes sur plusieurs lignes, car différents codecs peuvent utiliser diverses normes.

Les éléments de base des chaînes et les objets de chaînes

Généralement, les chaînes JavaScript sont créées à partir des valeurs primitives de texte :

var city = "New Delhi";

Mais, vous pouvez également utiliser le mot-clé new pour définir une chaîne comme objet :

var city = new String("New Delhi");

Pour tester la différence entre les deux, nous allons initialiser un primitif de chaîne et un objet de chaîne.

var str1 = "New Delhi";
var str2 = new String("New Delhi");
typeof str1// returns string
typeof str2// returns object
Voyons un test‹/›

Attention :Ne créez pas de chaînes comme des objets. Cela réduira la vitesse d'exécution et produira certains résultats inattendus.

Lorsque vous utilisez l'opérateur ==, les chaînes égales sont identiques :

var str1 = "New Delhi";
var str2 = new String("New Delhi");
document.write(str1 == str2); //retourne true, parce que str1et str2ont la même valeur
Voyons un test‹/›

Lorsque vous utilisez l'opérateur ===, les chaînes égales ne sont pas identiques, car l'opérateur === attend une valeur et un type égaux :

var str1 = "New Delhi";
var str2 = new String("New Delhi");
document.write(str1 === str2); //retourne false, parce que str1et str2de types différents
Voyons un test‹/›

Impossible de comparer les objets :

var str1 = new String("New Delhi");
var str2 = new String("New Delhi");
document.write(str1 == str2); //parce que str1et str2Ils sont des objets différents, donc le retour est false
document.write(str1 === str2); //parce que str1et str2Ils sont des objets différents, donc le retour est false
Voyons un test‹/›

Attention à la différence entre (==) et (===). Comparer deux objets JavaScript renverra toujours false.