Menu
Coddy logo textTech

プロジェクトの概要

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

challenge icon

チャレンジ

簡単

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

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 配列の各アクションを処理するループを作成し、その中で以下を行ってください:

  1. すべての結果を保持するための空の results 配列を作成します
  2. 異なるケースを処理する switch 文を作成します
  3. switch 文の中に、libraryData 内の現在の書籍を results 配列に追加する printBooks ケースを追加します
  4. switch 文の中に、libraryData 内の現在の読者を results 配列に追加する printReaders ケースを追加します
  5. 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;
}

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