Menu
Coddy logo textTech

Projektübersicht

Teil des Abschnitts Logik & Ablauf der JavaScript-Journey von Coddy — Lektion 60 von 65.

challenge icon

Aufgabe

Einfach

Sie werden ein Filmfestival-Management-System erstellen. Beginnen Sie damit, das System mit den bereitgestellten Daten zu initialisieren und die Hauptfunktionsstruktur zu erstellen.

Erstellen Sie eine Variable namens festivalData mit diesen exakten Anfangsdaten:

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

Erstellen Sie eine Funktion namens manageFestival, die zwei Parameter entgegennimmt:

  • actions (Array von Strings)
  • data (Array von Objekten)

Die Funktion sollte:

  1. Jede Aktion im actions-Array nacheinander verarbeiten
  2. Ein leeres results-Array erstellen
  3. Eine switch-Anweisung mit den folgenden initialen Fällen erstellen:
    • listMovies: fügt festivalData.movies zum results-Array hinzu
    • listVenues: fügt festivalData.venues zum results-Array hinzu
    • listTickets: fügt festivalData.tickets zum results-Array hinzu
    • listScreenings: fügt festivalData.screenings zum results-Array hinzu
    • default: fügt "Invalid action!" zum results-Array hinzu
  4. Das results-Array zurückgeben

Probier es selbst


const festivalData = {}; // Initiale Daten einfügen

function manageFestival(actions, data) {
    let results = [];
    
    actions.forEach((action, index) => {
        const currentData = data[index];
        
        switch(action) {
            case "listMovies":
               // Schreiben Sie Ihren Code hier

            case "listVenues":
               // Schreiben Sie Ihren Code hier

            case "listTickets":
                // Schreiben Sie Ihren Code hier

            case "listScreenings":
                // Schreiben Sie Ihren Code hier
                
            default:
                results.push("Invalid action!");
        }
    });
    
    return results;
}

Alle Lektionen in Logik & Ablauf