Ejercicio de programación con JavaScript: Inmutabilidad y programación funcional pura
0h 15m
JavaScript: Aprende a implementar funciones que garantizan la inmutabilidad y programación funcional pura. Mantén tus objetos completamente inalterados.
Implementa tres funciones puras que manipulen inmutablemente un objeto de usuario:
updateUserName(user, newName)
: Debe devolver un nuevo objeto con el nombre actualizado.addUserSkill(user, skill)
: Debe añadir una habilidad al array de habilidades sin modificar el array original.removeUserSkill(user, skillToRemove)
: Debe eliminar una habilidad específica del array de habilidades sin modificar el original.
Cada función debe mantener la inmutabilidad, garantizando que el objeto original no se modifique. El objeto usuario tiene esta estructura:
const user = {
id: 1,
name: "Ana",
email: "ana@example.com",
skills: ["JavaScript", "HTML", "CSS"]
};
Escribe las tres funciones y demuestra su funcionamiento con ejemplos que evidencien que el objeto original permanece intacto.
Todos los ejercicios de programación de JavaScript
Evalúa tus conocimientos con ejercicios de programación en JavaScript de tipo Test, Puzzle, Código y Proyecto con VSCode.
Clases y objetos
Uso de operadores
Uso de operadores
Estructuras de control
Proyecto Manipulación DOM
Excepciones
Transformación con map()
Arrays y Métodos
Reto Métodos de Strings
Transformación con map()
Funciones flecha
Async / Await
Selección de elementos DOM
API Fetch
Encapsulación
Mapas con Map
Creación y uso de variables
Polimorfismo
Reto Funciones flecha
Tipos de datos
Reto Operadores avanzados
Promises
Reto Estructuras de control
Estructuras de control
Pruebas unitarias
Funciones flecha
Polimorfismo
Reto Polimorfismo
Array
Transformación con map()
Reto Variables
Gestor de tareas con JavaScript
Proyecto Modificación de elementos DOM
Manipulación DOM
Funciones
Conjuntos con Set
Reto Prototipos y cadena de prototipos
Reto Encapsulación
Funciones flecha
Async / Await
Reto Excepciones
Reto Filtrado con filter() y find()
Creación y uso de variables
Excepciones
Promises
Funciones cierre (closure)
Reto Herencia
Herencia
Proyecto Eventos del DOM
Herencia
Selección de elementos DOM
Modificación de elementos DOM
Reto Clases y objetos
Filtrado con filter() y find()
Funciones cierre (closure)
Reto Destructuring de objetos y arrays
Callbacks
Funciones
Mapas con Map
Reducción con reduce()
Callbacks
Manipulación DOM
Introducción al DOM
Reto Funciones
Reto Funciones cierre (closure)
Promises
Reto Reducción con reduce()
Async / Await
Reto Estructuras de control
Eventos del DOM
Introducción a JavaScript
Async / Await
Promises
Selección de elementos DOM
Filtrado con filter() y find()
Callbacks
Creación de clases y objetos Restaurante
Reducción con reduce()
Filtrado con filter() y find()
Reducción con reduce()
Conjuntos con Set
Herencia de clases
Eventos del DOM
Clases y objetos
Modificación de elementos DOM
Mapas con Map
Proyecto carrito compra agoodshop
Introducción a JavaScript
Reto Mapas con Map
Funciones
Proyecto administrador de contactos
Reto Expresiones regulares
Tipos de datos
Clases y objetos
Array
Conjuntos con Set
Array
Encapsulación
Tutorial para resolver este ejercicio de programación
JavaScript
Inmutabilidad y programación funcional pura
Programación funcional