diff --git a/src/books.js b/src/books.js index c8119bb..3054201 100644 --- a/src/books.js +++ b/src/books.js @@ -38,30 +38,80 @@ // Your code here: -const booksArray = []; - - - +const booksArray = [ + { + title: "The Old Man and the Sea", + pages: 128, + author: "Ernest Hemingway", + details: { + language: "English", + description: "One of Hemingway's most famous works, it tells the story of Santiago..." + } + }, + { + title: "The Airbnb Story", + pages: 256, + author: "Leight Gallagher", + details: { + language: "English", + description: "This is the remarkable behind-the-scenes story of the creation and growth of Airbnb..." + } + }, + { + title:"Educated - A Memoir", + pages: 352, + author: "Tara Westover", + details: { + language: "English", + description: "The Art of Learning takes readers through Waitzkin's unique journey to excellence. He explains in clear detail how a well-thought-out, principled approach to Learning is what separates success from failure." + + } + }, + { + title: "The Art of Learning", + pages: 352, + author: "Josh Waitzkin", + details: { + language: "English", + description: "The Art of Learning takes readers through Waitzkin's unique journey to excellence. He explains in clear detail how a well-thought-out, principled approach to learning is what separates success from failure." + } + } +]; // Iteration 2 | Book Details -function getBookDetails() { +function getBookDetails(book) { // Your code here: - -} - + return `${book.title} - ${book.author} - ${book.pages} pages` + } + booksArray.forEach((book) => { + console.log(getBookDetails(book)); + }); // Iteration 3 | Delete Language // Your code here: - - - +function deleteBookLanguage(book) { + delete book.details.language; + return book; +} +booksArray.forEach((book) => { + console.log(deleteBookLanguage(book)); +}); // Iteration 4 | Estimated Reading Time + const readingPerword = 90; + const readingPerPage = 500; + // Your code here: + for (let i = 0; i < booksArray.length; i++) { + const book = booksArray[i]; + const hours = (booksArray[i].pages * readingPerPage) / readingPerword; + booksArray[i].readingTime = Math.ceil(hours); +} +console.log(booksArray); // Bonus: Iteration 5 | Books Dictionary @@ -86,15 +136,32 @@ const dictionary = { ], }; -function booksByAuthor() { +function booksByAuthor(dictionary) { // Your code here: - + const bookArr = []; + for (let author in dictionary){ + const books = dictionary[author]; + books.forEach((book) => { + bookArr.push({ + title: book[0], + pages: book[1], + author: author, + }); + }); + } +return bookArr; } - - // Bonus: Iteration 6 | Average Page Count -function averagePageCount() { +function averagePageCount(bookArr) { + let averageCount = 0; // Your code here: - + for (let i=0; i