영화 및 상영관 추가하기
Coddy JavaScript 여정의 논리 & 흐름 섹션에 포함된 레슨. 65개 중 61번째.
챌린지
쉬움switch 문에 addMovie와 addVenue라는 두 가지 새 case를 추가하세요.
addMovie의 경우, data 매개변수에는 다음이 포함됩니다:
- title (문자열)
- director (문자열)
- year (숫자)
- mainGenre (문자열)
- secondGenre (문자열)
함수는 다음을 수행해야 합니다:
- 다음 항목을 포함하는 새 영화 객체를 생성합니다:
- id: movies 배열의 길이에 1을 더해 생성
- data의 title, director, year, mainGenre, secondGenre
- avgRating: 0
- available: true
- 영화를
festivalData.movies배열에 추가합니다 Movie added successfully!를results배열에 추가합니다
addVenue의 경우, data 매개변수에는 다음이 포함됩니다:
- name (문자열)
- capacity (숫자)
함수는 다음을 수행해야 합니다:
- 다음 항목을 포함하는 새 venue 객체를 생성합니다:
- id: venues 배열의 길이에 1을 더해 생성
- data의
name과capacity
- venue를
festivalData.venues배열에 추가합니다 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 컴파일러