String.length

La propriété length représente la longueur d'une chaine de caractères, exprimée en nombre de points de code UTF-16. C'est une propriété accessible en lecture seule.

Syntaxe

str.length

Description

Cette propriété renvoie le nombre de « codets » (ou unités de code ou bien code units en anglais) d'une chaîne de caractères. UTF-16. Le format utilisé pour représenter les chaînes de caractères en JavaScript utilise un seul codet sur 16 bits pour représenter la plupart des caractères communs. En revanche, pour représenter les caractères plus rares, deux codets seront utilisés : la valeur renvoyée par length ne correspondra alors pas au nombre de caractères dans la chaîne.

ECMAScript 2016 (la septième édition) établit une longueur maximale de 2^53 - 1 éléments. Auparavant, aucune longueur maximale n'était spécifiée. Pour Firefox, les chaînes ont une longueur maximale de 2^30-2 caractères (environ 1 Go). Pour les versions de Firefox antérieures à Firefox 65, la taille maximale était de de 2^28-1 (environ 256 Mo).

Pour une chaine vide, on aura length égal à 0.

La propriété statique String.length renvoie la valeur 1.

Exemples

Utiliser String.length

const x = "Mozilla";
const vide = "";

console.log(x + " mesure " + x.length + " codets");
/* "Mozilla mesure 7 codets" */

console.log("La chaîne vide a une longueur de " + vide.length);
/* "La chaîne vide a une longueur de 0" */

Affecter une valeur à length

const maChaine = "Sloubi";
// Lorsqu'on tente d'affecter une valeur à la propriété length
// rien d'observable ne se produit

maChaine.length = 3;
console.log(maChaine); /* Sloubi */
console.log(maChaine.length); // 6

Spécifications

Spécification Statut Commentaires
ECMAScript 1st Edition (ECMA-262) Standard Définition initiale. Implémentée avec JavaScript 1.0.
ECMAScript 5.1 (ECMA-262)
La définition de 'String.prototype.length' dans cette spécification.
Standard
ECMAScript 2015 (6th Edition, ECMA-262)
La définition de 'String.prototype.length' dans cette spécification.
Standard
ECMAScript (ECMA-262)
La définition de 'String.prototype.length' dans cette spécification.
Standard évolutif

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi