Menu
CoddyTech

项目概览

本课属于 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()
}

创建一个名为 manageFestival 的函数,它接受两个参数:

  • actions(字符串数组)
  • data(对象数组)

函数应执行以下操作:

  1. 按顺序处理 actions 数组中的每个操作
  2. 创建一个空的 results 数组
  3. 创建一个 switch 语句,并添加以下初始情况:
    • listMovies:将 festivalData.movies 添加到 results 数组中
    • listVenues:将 festivalData.venues 添加到 results 数组中
    • listTickets:将 festivalData.tickets 添加到 results 数组中
    • listScreenings:将 festivalData.screenings 添加到 results 数组中
    • 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;
}

逻辑与流程中的所有课

自己练习: JavaScript 在线编译器