| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Errors/Invalid_array_length | [Back] [Original] |
Get to know MDN better
Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.
RangeError: invalid array length (Firefox) RangeError: Invalid array length (Chrome) RangeError: Invalid array buffer length (Chrome)
RangeError
Una longitud de array invlida puede presentarse en stas situaciones:
Array o un ArrayBuffer el cual tiene una longitud negativa o es igual o mayor a 2^32, oArray.length a un valor el cual es negativo o es igual o mayor a 2^32.Por qu el Array y ArrayBuffer tienen longitud limitada? La propiedad de longitud de un Array o un ArrayBuffer est representada con un entero sin signo de 32 bits, el cual slo puede almacenar valores que estn en el rango de 0 a (2^32)-1.
Si ests creando un Array usando el constructor, es mejor que utilices la notacin literal, ya que el primer argumento es interpretado como la longitud del Array.
De lo contrario, puedes especificar un mnimo y un mximo para la longitud antes de definir la propiedad de longitud, o puedes usarla como el argumento del constructor.
new Array(Math.pow(2, 40));
new Array(-1);
new ArrayBuffer(Math.pow(2, 32));
new ArrayBuffer(-1);
let a = [];
a.length = a.length - 1; // definir la propiedad de longitud a -1
let b = new Array(Math.pow(2, 32) - 1);
b.length = b.length + 1; // definir la propiedad de longitud a 2^32
[Math.pow(2, 40)]; // [ 1099511627776 ]
[-1]; // [ -1 ]
new ArrayBuffer(Math.pow(2, 32) - 1);
new ArrayBuffer(0);
let a = [];
a.length = Math.max(0, a.length - 1);
let b = new Array(Math.pow(2, 32) - 1);
b.length = Math.min(0xffffffff, b.length + 1);
// 0xffffffff es la notacin hexadecimal de 2^32 - 1
// el cual tambin se puede especificar como (-1 >>> 0)
Esta pgina se modific por ltima vez el 8 ago 2023 por colaboradores de MDN.
Partes de este contenido son 19982026 de colaboradores individuales de mozilla.org. Contenido disponible bajo una licencia Creative Commons.
| Web Proxy Viewer | New URL | Original Page |