Descripción general del proyecto
Parte de la sección Lógica y Flujo del Journey de JavaScript de Coddy. Lección 42 de 65.
Desafío
FácilCrearás un sistema de gestión de biblioteca. Comienza inicializando el sistema con los datos proporcionados y creando la estructura de la función principal.
Crea una variable llamada libraryData con estos datos iniciales exactos:
{
books: [
{
id: 1,
title: "The Great Gatsby",
author: "F. Scott Fitzgerald",
year: 1925,
genre: "Fiction",
isRead: false,
rating: 0,
borrowed: false,
borrowedBy: "",
borrowDate: ""
}
],
readers: [
{
name: "John Smith",
favoriteGenre: "Fiction",
}
]
}Ahora sigue estos pasos:
Crea una función llamada manageLibrary que acepte dos parámetros:
actions(matriz de cadenas)data(matriz de objetos)
La función debe procesar cada acción de la matriz actions en secuencia, utilizando el objeto de datos correspondiente de la matriz data en el mismo índice. Por ejemplo, la acción en actions[i] utiliza los datos en data[i].
Crea un bucle que recorra cada acción de la matriz actions y, después, dentro del bucle:
- Crea una matriz de resultados vacía que contendrá todos los resultados
- Crea una sentencia switch que gestione diferentes casos
- Añade un caso
printBooksdentro de la sentencia switch que añada los libros actuales delibraryDataa la matrizresults - Añade un caso
printReadersdentro de la sentencia switch que añada los lectores actuales delibraryDataa la matrizresults - Añade un caso predeterminado que añada “Invalid action!” a la matriz
results
Pruébalo tú mismo
// Datos iniciales de la biblioteca
let libraryData = {}
function manageLibrary(actions, data) {
let results = [];
for (let i = 0; i < actions.length; i++) {
const currentAction = actions[i];
const currentData = data[i];
switch (currentAction) {
case 'printBooks':
// Escribe tu código aquí
case 'printReaders':
// Escribe tu código aquí
default:
results.push("Invalid action!");
}
}
return results;
}
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