/
index.md
97 lines (74 loc) · 2.73 KB
/
index.md
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
---
title: RangeError
slug: Web/JavaScript/Reference/Global_Objects/RangeError
---
{{JSRef}}
El objeto **`RangeError`** indica un error cuando un valor no se encuentra dentro de un rango de valores permitidos.
## Descripción
Se lanza un `RangeError` cuando se intenta pasar un valor como argumento a una función
que no permite un rango que incluye el valor.
Esto puede ocurrir cuando:
- pasas un valor que no es uno de los valores de cadena permitidos a {{jsxref("String.prototype.normalize()")}}, o
- cuando intentas crear una matriz de una longitud inválida con el constructor {{jsxref("Array")}}, o
- cuando pasas valores inválidos a los métodos numéricos {{jsxref("Number.prototype.toExponential()")}},
{{jsxref("Number.prototype.toFixed()")}} o {{jsxref("Number.prototype.toPrecision()")}}.
## Constructor
- {{jsxref("RangeError/RangeError", "RangeError()")}}
- : Crea un nuevo objecto `RangeError`.
## Propiedades de instancia
- {{jsxref("Error.prototype.message", "RangeError.prototype.message")}}
- : Mensaje de error.
- {{jsxref("Error.prototype.name", "RangeError.prototype.name")}}
- : Nombre del error. Heredado de {{jsxref("Error")}}.
- {{jsxref("Error.prototype.fileName", "RangeError.prototype.fileName")}}
- : Ruta al archivo que generó este error. Heredado de {{jsxref("Error")}}.
- {{jsxref("Error.prototype.lineNumber", "RangeError.prototype.lineNumber")}}
- : Número de línea en el archivo que generó este error. Heredado de {{jsxref("Error")}}.
- {{jsxref("Error.prototype.columnNumber", "RangeError.prototype.columnNumber")}}
- : Número de columna en la línea que generó este error. Heredado de {{jsxref("Error")}}.
- {{jsxref("Error.prototype.stack", "RangeError.prototype.stack")}}
- : Seguimiento de pila. Heredado de {{jsxref("Error")}}.
## Ejemplo
### Usando RangeError (para valores numéricos)
```js
function check(n) {
if (!(n >= -500 && n <= 500)) {
throw new RangeError("El argumento debe estar entre -500 y 500.");
}
}
try {
check(2000);
} catch (error) {
if (error instanceof RangeError) {
// Manejar el error
}
}
```
### Usando RangeError (para valores no numéricos)
```js
function check(value) {
if (["apple", "banana", "carrot"].includes(value) === false) {
throw new RangeError(
'El argumento debe de ser una "apple", "banana", o "carrot".',
);
}
}
try {
check("cabbage");
} catch (error) {
if (error instanceof RangeError) {
// Manejar el error
}
}
```
## Especificaciones
{{Specifications}}
## Compativilidad con navegadores
{{Compat}}
## Véase también
- {{jsxref("Error")}}
- {{jsxref("Array")}}
- {{jsxref("Number.toExponential()")}}
- {{jsxref("Number.toFixed()")}}
- {{jsxref("Number.toPrecision()")}}
- {{jsxref("String.prototype.normalize()")}}