Menu
CoddyTech

영화 및 상영관 추가하기

Coddy JavaScript 여정의 논리 & 흐름 섹션에 포함된 레슨. 65개 중 61번째.

challenge icon

챌린지

쉬움

switch 문에 addMovie와 addVenue라는 두 가지 새 case를 추가하세요.

addMovie의 경우, data 매개변수에는 다음이 포함됩니다:

  • title (문자열)
  • director (문자열)
  • year (숫자)
  • mainGenre (문자열)
  • secondGenre (문자열)

함수는 다음을 수행해야 합니다:

  1. 다음 항목을 포함하는 새 영화 객체를 생성합니다:
    • id: movies 배열의 길이에 1을 더해 생성
    • data의 title, director, year, mainGenre, secondGenre
    • avgRating: 0
    • available: true
  2. 영화를 festivalData.movies 배열에 추가합니다
  3. Movie added successfully!를 results 배열에 추가합니다

addVenue의 경우, data 매개변수에는 다음이 포함됩니다:

  • name (문자열)
  • capacity (숫자)

함수는 다음을 수행해야 합니다:

  1. 다음 항목을 포함하는 새 venue 객체를 생성합니다:
    • id: venues 배열의 길이에 1을 더해 생성
    • data의 name과 capacity
  2. venue를 festivalData.venues 배열에 추가합니다
  3. Venue added successfully!를 results 배열에 추가합니다

직접 해보기

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

논리 & 흐름의 모든 레슨

직접 연습해 보세요: 온라인 JavaScript 컴파일러