aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/javascript/reference/errors/resulting_string_too_large/index.md
blob: 1c4eddce51f3170fcfab6ef25e8ff2a6a3cc04a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
---
title: 'RangeError: repeat count must be less than infinity'
slug: Web/JavaScript/Reference/Errors/Resulting_string_too_large
tags:
  - Erreurs
  - JavaScript
  - RangeError
translation_of: Web/JavaScript/Reference/Errors/Resulting_string_too_large
original_slug: Web/JavaScript/Reference/Erreurs/Resulting_string_too_large
---
{{jsSidebar("Errors")}}

## Message

    RangeError: argument out of range (Edge)
    RangeError: repeat count must be less than infinity and not overflow maximum string size (Firefox)
    RangeError: Invalid count value (Chrome)

## Type d'erreur

{{jsxref("RangeError")}}

## Quel est le problème ?

La méthode {{jsxref("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 {{jsxref("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 2^28-1 (`0xFFFFFFF`).

## Exemples

### Exemples invalides

```js example-bad
'abc'.repeat(Infinity); // RangeError
'a'.repeat(2**28);      // RangeError
```

### Exemples valides

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

## Voir aussi

- {{jsxref("String.prototype.repeat()")}}