プロジェクトの概要
CoddyのJavaScriptジャーニー「論理とフロー」セクションの一部 — レッスン 42/65。
チャレンジ
簡単図書館管理システムを作成します。提供されたデータでシステムを初期化し、メイン関数の構造を作成することから始めましょう。
libraryData という名前の変数を作成し、以下の正確な初期データを設定してください:
{
books: [
{
id: 1,
title: "The Great Gatsby",
author: "F. Scott Fitzgerald",
year: 1925,
genre: "Fiction",
isRead: false,
rating: 0,
borrowed: false,
borrowedBy: "",
borrowDate: ""
}
],
readers: [
{
name: "John Smith",
favoriteGenre: "Fiction",
}
]
}次に、以下の手順に従ってください:
2つのパラメータを受け取る manageLibrary という名前の関数を作成します:
actions(文字列の配列)data(オブジェクトの配列)
この関数は、actions 配列内の各アクションを順番に処理し、同じインデックスにある data 配列の対応するデータオブジェクトを使用する必要があります。例えば、actions[i] のアクションは data[i] のデータを使用します。
actions 配列の各アクションを処理するループを作成し、その中で以下を行ってください:
- すべての結果を保持するための空の
results配列を作成します - 異なるケースを処理する
switch文を作成します switch文の中に、libraryData内の現在の書籍をresults配列に追加するprintBooksケースを追加しますswitch文の中に、libraryData内の現在の読者をresults配列に追加するprintReadersケースを追加しますresults配列に"Invalid action!"を追加するdefaultケースを追加します
自分で試してみよう
// 初期ライブラリデータ
let libraryData = {}
function manageLibrary(actions, data) {
let results = [];
for (let i = 0; i < actions.length; i++) {
const currentAction = actions[i];
const currentData = data[i];
switch (currentAction) {
case 'printBooks':
// ここにコードを書いてください
case 'printReaders':
// ここにコードを書いてください
default:
results.push("Invalid action!");
}
}
return results;
}