Menu
Coddy logo textTech

Panoramica del progetto

Fa parte della sezione Logica e flusso del percorso JavaScript di Coddy. Lezione 60 di 65.

challenge icon

Sfida

Facile

Creerai un sistema di gestione di un festival cinematografico. Inizia inizializzando il sistema con i dati forniti e creando la struttura della funzione principale.

Crea una variabile chiamata festivalData con questi dati iniziali esatti:

{
	movies: [{
		id: 1,
		title: "Inception",
		director: "Christopher Nolan",
		year: 2010,
		mainGenre: "Sci-Fi",
		secondGenre: undefined,
		avgRating: 0,
		available: true
	}],
	venues: [{
		id: 1,
		name: "Main Theater",
		capacity: 200,
	}],
	screenings: [{
		id: 1,
		movieId: 1,
		venueId: 1,
		date: '2023-10-29',
		time: '13:35:00',
		availableSeats: 200
	}],
	tickets: new Set()
}

Crea una funzione chiamata manageFestival che accetta due parametri:

  • actions (array di stringhe)
  • data (array di oggetti)

La funzione dovrebbe:

  1. Elaborare ogni azione nell'array actions in sequenza
  2. Creare un array results vuoto
  3. Creare un'istruzione switch con i seguenti casi iniziali:
    • listMovies: aggiunge festivalData.movies all'array results
    • listVenues: aggiunge festivalData.venues all'array results
    • listTickets: aggiunge festivalData.tickets all'array results
    • listScreenings: aggiunge festivalData.screenings all'array results
    • default: aggiunge "Invalid action!" all'array results
  4. Restituire l'array results

Provalo tu


const festivalData = {}; // Inserisci i dati iniziali

function manageFestival(actions, data) {
    let results = [];
    
    actions.forEach((action, index) => {
        const currentData = data[index];
        
        switch(action) {
            case "listMovies":
               // Scrivi il tuo codice qui

            case "listVenues":
               // Scrivi il tuo codice qui

            case "listTickets":
                // Scrivi il tuo codice qui

            case "listScreenings":
                // Scrivi il tuo codice qui
                
            default:
                results.push("Invalid action!");
        }
    });
    
    return results;
}

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore JavaScript online