Menu
Coddy logo textTech

Przegląd projektu

Część sekcji Logika i przepływ programu ścieżki JavaScript w Coddy. Lekcja 60 z 65.

challenge icon

Wyzwanie

Łatwy

Będziesz tworzyć system zarządzania festiwalem filmowym. Zacznij od zainicjowania systemu za pomocą podanych danych i utworzenia głównej struktury funkcji.

Utwórz zmienną o nazwie festivalData z dokładnie tymi danymi początkowymi:

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

Utwórz funkcję o nazwie manageFestival, która przyjmuje dwa parametry:

  • actions (tablica ciągów znaków)
  • data (tablica obiektów)

Funkcja powinna:

  1. Przetwarzać kolejno każdą akcję z tablicy actions
  2. Utworzyć pustą tablicę results
  3. Utworzyć instrukcję switch z następującymi początkowymi przypadkami:
    • listMovies: dodaje festivalData.movies do tablicy results
    • listVenues: dodaje festivalData.venues do tablicy results
    • listTickets: dodaje festivalData.tickets do tablicy results
    • listScreenings: dodaje festivalData.screenings do tablicy results
    • default: dodaje "Invalid action!" do tablicy results
  4. Zwrócić tablicę results

Spróbuj swoich sił


const festivalData = {}; // Wypełnij danymi początkowymi

function manageFestival(actions, data) {
    let results = [];
    
    actions.forEach((action, index) => {
        const currentData = data[index];
        
        switch(action) {
            case "listMovies":
               // Wpisz tutaj swój kod

            case "listVenues":
               // Wpisz tutaj swój kod

            case "listTickets":
                // Wpisz tutaj swój kod

            case "listScreenings":
                // Wpisz tutaj swój kod
                
            default:
                results.push("Invalid action!");
        }
    });
    
    return results;
}

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator JavaScript online