Instanciation
L’instanciation se fait simplement en indiquant le texte entre simples ou doubles cotes. Plus récemment, les backquotes ont été implémentées pour répondre à différentes problématiques, voir plus bas les template strings.
// Pas possible de mettre des apostrophes. let content = 'Salut !'; // Apostrophe possible mais pas les guillemets. let content = "Salut l'ami !"; // Les backquotes, plus récentes, permettent tout. let content = `Avec les backquotes, on peut utiliser l'apostrophe, ansi que les "guillemets", et même des retours à la ligne.`;
Si la chaine est vide au départ, on ne met que les cotes. Une chaine peut être concaténée à une autre avec le +.
var str = ""; str += "Texte";
Fonctions des chaines de caractères
// Permet d'obtenir la longueur de la chaine
str.length
// Retourne le caractère en position n de la chaine
str[n]
// Retourne le caractère en position n de la chaine
str.charAt(n)
// Retourne le code ASCII du caractère en position n de la chaine
str.charCodeAt(n)
// Passe la chaine en minuscules
str.toLowerCase()
// Passe la chaine en majuscules
str.toUpperCase()
// Retourne l'indice (position) de la 1ère occurrence de val dans la chaine ou -1 si val n'est pas trouvé
str.indexOf("val")
// Retourne l'indice (position) de la dernière occurrence de val dans la chaine ou -1 si val n'est pas trouvé
str.lastIndexOf("val")
// Retourne true ou false selon si la chaine commence par Hello
str.startsWidth("Hello")
// Retourne true ou false selon si la chaine commence par Hello
str.endsWidth("Bye")
// Décompose une chaine sur le caractère fourni et retourne un tableau
str.split(";")
// Récupère une portion de la chaine, partant du début et allant jusqu'au 1er espace
str.substring(0, myString.indexOf(' '));
// Remplacer du texte
str.replace('old', 'new');
// Supprimer les espaces blancs en début et fin de chaine
// Sont concernés : espace, tabulation, espace insécable, etc.) et les caractères de fin de ligne (LF, CR, etc.)
str.trim();Template Strings : concaténation texte et variables, texte multi-lignes
Des années durant, il était nécessaire d’utiliser l’opérateur « + » pour concaténer du texte avec une variable pour obtenir un phrase finale à afficher par exemple. Depuis ES6 et l’apparition des Template Strings, il est possible d’utiliser directement des variables dans la chaine de texte sous condition que celle-ci soit entourée de backquote (ou backtick), le symbôle « ` ». En plus des variables, il est aussi possible d’afficher le résultat d’un calcul, l’attribut d’un objet, l’élément d’un tableau.
// Concaténation
var animal = "cow";
var sound = "moo";
alert(`Animal ${animal} sound is ${sound}`); // Affiche "Animal cow sound is moo"
alert(`ten times two totally is ${ 10 * 2 }`);L’utilisation de cette quote permet également d’écrire du texte sur plusieurs lignes, ce qui nécessitait jusque-là de concaténer chaque ligne, toujours avec l’opérateur « + ».
// Texte simple
var message = `Ceci est un exemple de message
qui peut être stocké sur plusieurs lignes
mais ne sera affiché que sur une seule.`;
// Texte avec variables
var animal = {
name: 'cow',
ilk: 'bovine',
front: 'moo',
back: 'milk',
}
alert(`
The ${animal.name} is of the
${animal.ilk} ilk,
one end is for the ${animal.front},
the other for the ${animal.back}
`);
/* Affichera :
The cow is of the
bovine ilk,
one end is for the moo,
the other for the milk
*/