Arrays dispersos
Parte de la sección Lógica y Flujo del Journey de JavaScript de Coddy. Lección 49 de 65.
Un array disperso en JavaScript es un array con espacios vacíos o brechas entre sus elementos. Estas brechas se crean cuando asignas valores a índices no consecutivos o cuando eliminas elementos de un array.
Aquí tienes un ejemplo de cómo crear un array disperso:
let sparseArray = [1, , , 4, 5];
console.log(sparseArray.length); // 5
console.log(sparseArray); // [1, empty × 2, 4, 5]También puedes crear matrices dispersas asignando un valor a un índice que está más allá de la longitud actual:
let arr = [1, 2, 3];
arr[10] = 10;
console.log(arr); // [1, 2, 3, vacío × 7, 10]
console.log(arr.length); // 11Una posición vacía no es lo mismo que una posición que contiene undefined, y leer arr[i] devuelve undefined en ambos casos. Para distinguirlas, comprueba si el índice existe con el operador in:
let sparseArray = [1, , , 4, 5];
console.log(1 in sparseArray); // false, el slot 1 está vacío
console.log(0 in sparseArray); // true, el slot 0 contiene 1Desafío
FácilCrea una función llamada analyzeSparseArray que reciba un array disperso como argumento. La función debe devolver un objeto con las siguientes propiedades:
length: La longitud total del arrayelementCount: El número de elementos no vacíos del arraylargestGap: El tamaño del intervalo más grande (ranuras vacías consecutivas) del array
Pruébalo tú mismo
function analyzeSparseArray(arr) {
// Escribe tu código aquí
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Lógica y Flujo
1Strings en profundidad
Fundamentos de stringsIterar sobre stringsTemplate LiteralsMétodos de stringsResumen - String Weaver4JSON Parte 2
Iterar sobre JSONJSON anidadoEncadenamiento opcional en JSONCopia superficial y profundaResumen - Tienda de bicicletasResumen - Sistema solar7Sistema de Gestión de Biblioteca
Descripción general del proyectoAñadir libros10Gestionar el sistema del festival
Descripción general del proyectoAñadir películas y sedes2Arreglos multidimensionales
Conceptos básicos de arreglos 2DAcceso a elementos de arreglos 2DBucles anidados con arreglos 2DResumen - Arreglos 2DSuma y resta de matricesArreglos irregulares (Jagged Arrays)Arreglos 3D y más alláPatrones comunes en arreglos 2DResumen - Todo sobre arreglos5Conjuntos Parte 1
¿Qué es un conjunto?Iterar sobre conjuntosAñadir un elementoEliminar un elementoComprobar si un elemento existeTamaño y Is EmptyCopy y ClearResumen - Conceptos básicos de conjuntos8Temas interesantes de Arrays
Desestructuración de ArraysSintaxis Spread en ArraysArrays dispersosResumen - Taller de Arrays3JSON Parte 1
¿Qué es un JSON?Comprobar si existe una claveMétodos de objetoEl Spread Operator Parte 1El Spread Operator Parte 2Eliminar clavesResumen - Manipular claves de JSONPractica por tu cuenta: Compilador de JavaScript online