Project Overview
Part of the Logic & Flow section of Coddy's JavaScript journey — lesson 60 of 65.
Challenge
EasyYou will be creating a Movie Festival Management System. Start by initializing the system with the provided data and creating the main function structure.
Create a variable called festivalData with this exact initial data:
{
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()
}Create a function called manageFestival that takes two parameters:
- actions (array of strings)
- data (array of objects)
The function should:
- Process each action in the actions array in sequence
- Create an empty results array
- Create a switch statement with the following initial cases:
listMovies: addsfestivalData.moviestoresultsarraylistVenues: addsfestivalData.venuestoresultsarraylistTickets: addsfestivalData.ticketsto theresultsarraylistScreenings: addsfestivalData.screeningsto theresultsarray- default: adds "Invalid action!" to results array
- Return the results array
Try it yourself
const festivalData = {}; // Fill initial data
function manageFestival(actions, data) {
let results = [];
actions.forEach((action, index) => {
const currentData = data[index];
switch(action) {
case "listMovies":
// Write your code here
case "listVenues":
// Write your code here
case "listTickets":
// Write your code here
case "listScreenings":
// Write your code here
default:
results.push("Invalid action!");
}
});
return results;
}All lessons in Logic & Flow
1Strings In Depth
String FundamentalsIterate Over StringsTemplate LiteralsString MethodsRecap - String Weaver4JSON Part 2
Iterate Over JSONNested JSONJSON Optional ChainingShallow And Deep CopyRecap - Bicycle ShopRecap - Solar System10Manage Festival System
Project OverviewAdd Movies & Venues2Multi-dimensional Arrays
2D Arrays BasicsAccessing 2D Array ElementsNested Loops with 2D ArraysRecap - 2D ArraysMatrix Addition & SubstractionJagged Arrays3D Arrays And BeyondCommon 2D Array PatternsRecap - All About Arrays5Sets Part 1
What Is A Set?Iterating Over SetsAdding An ElementRemoving An ElementChecking If An Element ExistsSize And Is EmptyCopy And ClearRecap - Basic Of Sets8Arrays Interesting Topics
Array DestructuringSpread Syntax in ArraysSparse ArraysRecap - Arrays Workshop3JSON Part 1
What is a JSON?Check If Key ExistsObject MethodsThe Spread Operator Part 1The Spread Operator Part 2Remove KeysRecap - JSON Manipulate Keys