Projeye Genel Bakış
Coddy'nin JavaScript Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 42 / 65.
Görev
KolayBir kütüphane yönetim sistemi oluşturacaksınız. Sisteme sağlanan verilerle başlayın ve ana fonksiyon yapısını oluşturun.
Aşağıdaki tam başlangıç verilerini içeren libraryData adında bir değişken oluşturun:
{
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",
}
]
}Şimdi şu adımları izleyin:
İki parametre alan manageLibrary adında bir fonksiyon oluşturun:
actions(dizelerden oluşan bir dizi)data(nesnelerden oluşan bir dizi)
Fonksiyon, actions dizisindeki her bir işlemi sırayla işlemeli ve data dizisindeki aynı indekste bulunan karşılık gelen veri nesnesini kullanmalıdır. Örneğin, actions[i] konumundaki işlem, data[i] konumundaki veriyi kullanır.
Actions dizisindeki her bir işlemden geçen bir döngü oluşturun, ardından döngünün içinde:
- Tüm sonuçları tutacak boş bir sonuç dizisi oluşturun
- Farklı durumları ele alacak bir switch ifadesi oluşturun
- Switch ifadesinin içine,
libraryDataiçindeki mevcut kitaplarıresultsdizisine ekleyecek birprintBooksdurumu ekleyin - Switch ifadesinin içine,
libraryDataiçindeki mevcut okuyucularıresultsdizisine ekleyecek birprintReadersdurumu ekleyin resultsdizisine "Invalid action!" ekleyen bir varsayılan (default) durum ekleyin
Kendin dene
// Başlangıç kütüphane verileri
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':
// Kodunuzu buraya yazın
case 'printReaders':
// Kodunuzu buraya yazın
default:
results.push("Invalid action!");
}
}
return results;
}
Mantık ve Akış bölümündeki tüm dersler
1Derinlemesine Stringler
String TemelleriString Üzerinde YinelemeTemplate LiteralsString MetotlarıÖzet - String Weaver4JSON Bölüm 2
JSON Üzerinde Yinelemeİç İçe Geçmiş JSONJSON Optional ChainingSığ ve Derin KopyalamaÖzet - Bisiklet MağazasıÖzet - Güneş Sistemi7Kütüphane Yönetim Sistemi
Projeye Genel BakışKitap Ekleme10Festival Sistemi Yönetimi
Projeye Genel BakışFilm ve Mekan Ekle2Çok Boyutlu Diziler
2D Dizi Temelleri2D Dizi Elemanlarına Erişme2D Dizilerle İç İçe DöngülerÖzet - 2D DizilerMatris Toplama ve ÇıkarmaDüzensiz Diziler3D Diziler ve ÖtesiYaygın 2D Dizi DesenleriÖzet - Diziler Hakkında Her Şey5Kümeler Bölüm 1
Küme Nedir?Kümeler Üzerinde YinelemeEleman EklemeEleman SilmeEleman Varlığını Kontrol EtmeBoyut ve Boş Olma DurumuKopyalama ve TemizlemeÖzet - Kümelerin Temelleri8Diziler: İlginç Konular
Dizi Yapı SökümüDizilerde Spread SözdizimiSeyrek DizilerÖzet - Diziler Workshop3JSON Bölüm 1
JSON Nedir?Anahtarın Varlığını Kontrol EtmeNesne MetotlarıSpread Operatörü Bölüm 1Spread Operatörü Bölüm 2Anahtarları KaldırmaÖzet - JSON Anahtarlarını Yönetme