RangeError: repeat count must be less than infinity

Message

RangeError: repeat count must be less than infinity and not overflow maximum string size (Firefox)

RangeError: Invalid count value (Chrome)

Type d'erreur

RangeError

Quel est le problème ?

La méthode String.prototype.repeat(), qui permet de répéter une chaîne de caractères, a été utilisée avec un argument qui n'est pas compris entre 0 et Infinity (exclue) (ce qui correspond à l'intervalle [0, +∞))

La chaîne de caractères crée par cette méthode ne doit pas dépasser la taille maximale d'une chaîne. Cette taille varie selon le moteur JavaScript. Pour Firefox (SpiderMonkey), la taille maximale d'une chaîne de caractères vaut 228 -1 (0xFFFFFFF).

Exemples

Exemples invalides

'abc'.repeat(Infinity); // RangeError
'a'.repeat(2**28);      // RangeError

Exemples valides

'abc'.repeat(0);    // ''
'abc'.repeat(1);    // 'abc'
'abc'.repeat(2);    // 'abcabc'
'abc'.repeat(3.5);  // 'abcabcabc' (count will be converted to integer)

Voir aussi

Étiquettes et contributeurs liés au document

Étiquettes : 
 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,