Menu
Coddy logo textTech

プロジェクトの概要

CoddyのJavaScriptジャーニー「論理とフロー」セクションの一部 — レッスン 60/65。

challenge icon

チャレンジ

簡単

映画祭管理システムを作成します。提供されたデータでシステムを初期化し、メイン関数の構造を作成することから始めましょう。

以下の正確な初期データを持つ 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()
}

2つのパラメータを受け取る manageFestival という関数を作成してください。

  • actions (文字列の配列)
  • data (オブジェクトの配列)

この関数は以下の処理を行う必要があります。

  1. actions 配列内の各アクションを順番に処理する
  2. 空の results 配列を作成する
  3. 以下の初期ケースを持つ switch 文を作成する:
    • listMovies: festivalData.moviesresults 配列に追加する
    • listVenues: festivalData.venuesresults 配列に追加する
    • listTickets: festivalData.ticketsresults 配列に追加する
    • listScreenings: festivalData.screeningsresults 配列に追加する
    • default: "Invalid action!" を results 配列に追加する
  4. results 配列を返す

自分で試してみよう


const festivalData = {}; // 初期データを入力

function manageFestival(actions, data) {
    let results = [];
    
    actions.forEach((action, index) => {
        const currentData = data[index];
        
        switch(action) {
            case "listMovies":
               // ここにコードを記述してください

            case "listVenues":
               // ここにコードを記述してください

            case "listTickets":
                // ここにコードを記述してください

            case "listScreenings":
                // ここにコードを記述してください
                
            default:
                results.push("Invalid action!");
        }
    });
    
    return results;
}

論理とフローのすべてのレッスン