Modificación del principio con shift(), unshift()

Clase 50 de 80Curso de JavaScript Desde Cero

Contenido del curso

Primeros Pasos

Funciones y This

Resumen

¿Cómo se utiliza el método shift en JavaScript?

El método shift en JavaScript es una herramienta poderosa para manipular arrays, permitiéndote eliminar el primer elemento de un array y devolviendo ese mismo valor. Este método es particularmente útil cuando necesitas trabajar de manera dinámica con listas de elementos, como listas de reproducción o colas de espera.

Ejemplo de aplicación del método shift

Para ilustrar cómo funciona, imagina que tienes un array de colores:

const colors = ['yellow', 'blue', 'red']; const removedColor = colors.shift(); console.log(colors); // Resultado: ['blue', 'red'] console.log(removedColor); // Resultado: 'yellow'

Como puedes ver, colors es ahora un array sin su primer elemento, y se ha guardado el valor removido ('yellow') en la variable removedColor.

¿Qué hace el método unshift y cómo se usa?

El método unshift es el complemento perfecto para shift. Con unshift, puedes agregar uno o más elementos al inicio de un array, y también te devuelve el nuevo tamaño de ese array tras la modificación. Este método es ideal para situaciones donde la prioridad o el orden precisa de la lista deben ser ajustados.

Ejemplo de utilización de unshift

Supongamos que deseas agregar nuevos colores a nuestro array inicial de ejemplo:

const colors = ['blue', 'red']; const newColorsCount = colors.unshift('pink', 'purple'); console.log(colors); // Resultado: ['pink', 'purple', 'blue', 'red'] console.log(newColorsCount); // Resultado: 4

Aquí, unshift ha agregado 'pink' y 'purple' al inicio, y el array ahora tiene cuatro elementos.

¿Cómo puedo aplicar shift y unshift en una aplicación?

Vamos a imaginar el caso de una aplicación de música que utiliza una lista de reproducción que necesita ser actualizada regularmente. La meta es remover la canción más antigua y agregar una nueva al inicio.

Creación de una función para manejar una lista de reproducción

Veamos cómo puedes implementar esto mediante una función:

function managePlaylist(playlist, newSong) { playlist.shift(); // Remueve la primera canción playlist.unshift(newSong); // Agrega la nueva canción al inicio return playlist; // Devuelve la lista actualizada } // Variables para la demostración const initialPlaylist = ['Sweater Weather', 'What You Know', 'Eventually']; const newSongToAdd = 'The Adults Are Talking'; // Ejecución de la función const updatedPlaylist = managePlaylist(initialPlaylist, newSongToAdd); console.log('Lista inicial:', initialPlaylist); console.log('Nueva canción para agregar:', newSongToAdd); console.log('Lista actualizada:', updatedPlaylist);

Resultados de la función

Al ejecutar este código, obtendrás una lista de reproducción actualizada donde la nueva canción ha sido añadida al inicio, y la canción más antigua ha sido eliminada. Ten en cuenta que initialPlaylist será igual a updatedPlaylist porque los métodos shift y unshift modifican el array original. Esto es crucial para entender cómo gestionar arrays de manera eficaz en proyectos de desarrollo.

Esta implementación subraya cómo los métodos de modificación directa del array, como shift y unshift, pueden afectar la estructura y contenido del mismo, permitiéndote manipular datos de manera flexible y eficiente.