Menu
CoddyTech

Tambahkan Film dan Lokasi

Termasuk bagian Logika dan Alur dalam perjalanan JavaScript di Coddy. Pelajaran 61 dari 65.

challenge icon

Tantangan

Mudah

Tambahkan dua case baru ke pernyataan switch-mu: addMovie dan addVenue.

Untuk addMovie, parameter data berisi:

  • title (string)
  • director (string)
  • year (number)
  • mainGenre (string)
  • secondGenre (string)

Fungsi harus:

  1. Membuat object movie baru dengan:
    • id: hasilkan dengan menambahkan 1 ke panjang array movies
    • title, director, year, serta mainGenre dan secondGenre dari data
    • avgRating: 0
    • available: true
  2. Menambahkan movie ke array festivalData.movies
  3. Menambahkan Movie added successfully! ke array results

Untuk addVenue, parameter data berisi:

  • name (string)
  • capacity (number)

Fungsi harus:

  1. Membuat object venue baru dengan:
    • id: hasilkan dengan menambahkan 1 ke panjang array venues
    • name dan capacity dari data
  2. Menambahkan venue ke array festivalData.venues
  3. Menambahkan Venue added successfully! ke array results

Coba sendiri

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;
}

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler JavaScript online