Menu
Coddy logo textTech

Aggiungere film e sale

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

challenge icon

Sfida

Facile

Aggiungi due nuovi casi alla tua istruzione switch: addMovie e addVenue.

Per addMovie, il parametro data contiene:

  • titolo (stringa)
  • regista (stringa)
  • anno (numero)
  • mainGenre (stringa)
  • secondGenre (stringa)

La funzione dovrebbe:

  1. Creare un nuovo oggetto film con:
    • id: generato aggiungendo 1 alla lunghezza dell'array dei film
    • titolo, regista, anno e mainGenre, secondGenre dai dati
    • avgRating: 0
    • available: true
  2. Aggiungere il film all'array festivalData.movies
  3. Aggiungere Movie added successfully! all'array results

Per addVenue, il parametro data contiene:

  • nome (stringa)
  • capienza (numero)

La funzione dovrebbe:

  1. Creare un nuovo oggetto luogo con:
    • id: generato aggiungendo 1 alla lunghezza dell'array dei luoghi
    • name e capacity dai dati
  2. Aggiungere il luogo all'array festivalData.venues
  3. Aggiungere Venue added successfully! all'array results

Provalo tu

const festivalData = {
	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()
}

function manageFestival(actions, data) {
    let results = [];
    
    actions.forEach((action, index) => {
        const currentData = data[index];
        
        switch(action) {
            case "listMovies":
                results.push(festivalData.movies);
                break;
                
            case "listVenues":
                results.push(festivalData.venues);
                break;

            case "listTickets":
                results.push(festivalData.tickets);
                break;

            case "listScreenings":
                results.push(festivalData.screenings);
                break;
                
            default:
                results.push("Invalid action!");
        }
    });
    
    return results;
}

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore JavaScript online