Esta excepción de JavaScript Longitud de array no válida se produce cuando se crea un Array o un ArrayBuffer con una longitud de array negativa o mayor o igual a 2 32. También puede ocurrir si la propiedad de longitud se establece manualmente en un valor negativo o mayor que igual a 2 32 .
Mensaje:
RangeError: Array length must be a finite positive integer (Edge) RangeError: invalid array length (Firefox) RangeError: Invalid array length (Chrome) RangeError: Invalid array buffer length (Chrome)
Tipo de error:
RangeError
Causa del error: la longitud de un Array o un ArrayBuffer solo se puede representar mediante un número entero de 32 bits sin signo, que solo almacena valores que van de 0 a 2 32 -1. Al crear una array o un ArrayBuffer, si la longitud de la array es negativa o mayor o igual a 2 32 , se produce este error.
Ejemplo 1: en este ejemplo, la propiedad de longitud se establece en 6, que es un valor válido, por lo que no se produjo ningún error.
HTML
<!DOCTYPE html> <html> <head> <script src= "https://code.jquery.com/jquery-3.5.0.js"> </script> </head> <body style="text-align: center;"> <h1 style="color: green;"> GeeksforGeeks </h1> <p> JavaScript RangeError Invalid array length </p> <button onclick="Geeks();"> click here </button> <p id="GFG_DOWN"></p> <script> var el_down = document.getElementById("GFG_DOWN"); function Geeks() { try { let a = []; a.length = 6; el_down.innerHTML = "'Invalid array length' "+ "error has not occurred"; } catch (e) { // Show the error in console console.log(e); el_down.innerHTML = "'Invalid array length' "+ "error has occurred"; } } </script> </body> </html>
Producción:
Ejemplo 2: en este ejemplo, la propiedad de longitud se establece en -1, que es un valor no válido, por lo tanto, se produjo el error.
HTML
<!DOCTYPE html> <html> <head> <script src= "https://code.jquery.com/jquery-3.5.0.js"> </script> </head> <body style="text-align: center;"> <h1 style="color: green;"> GeeksforGeeks </h1> <p> JavaScript RangeError Invalid array length </p> <button onclick="Geeks();"> click here </button> <p id="GFG_DOWN"></p> <script> var el_down = document.getElementById("GFG_DOWN"); function Geeks() { try { let a = []; a.length = -1; el_down.innerHTML = "'Invalid array length' "+ "error has not occurred"; } catch (e) { // Show the error in console console.log(e); el_down.innerHTML = "'Invalid array length' "+ "error has occurred"; } } </script> </body> </html>
Producción:
Publicación traducida automáticamente
Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA