diff --git a/src/books.js b/src/books.js index c8119bb..7d61fde 100644 --- a/src/books.js +++ b/src/books.js @@ -38,27 +38,75 @@ // 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: "Leigh 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: + "Educated is an account of the struggle for self-invention..." + } + }, + { + title: "The Art of Learning", + pages: 288, + 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(arr) { // Your code here: - +return `${arr.title} - ${arr.author} - ${arr.pages} pages`; } - - // Iteration 3 | Delete Language // Your code here: +for (let i =0; i < booksArray.length; i++){ + delete booksArray[i].details.language +} +console.log(booksArray); // Iteration 4 | Estimated Reading Time // Your code here: +for ( let i = 0; i < booksArray.length; i++){ + let time = Math.ceil((booksArray[i].pages * 500) / 90); + booksArray[i].readingTime = time; +} +console.log(booksArray); @@ -86,15 +134,34 @@ const dictionary = { ], }; -function booksByAuthor() { +function booksByAuthor(Dic) { // Your code here: + let bookObj = []; + for (const author in Dic){ + for (let j = 0; j < Dic[author].length; j++){ + let newArray = bookObj.push({ + title: Dic[author][j][0], + pages: Dic[author][j][1], + author: author}); + } + } + return bookObj; + } -} + // Bonus: Iteration 6 | Average Page Count -function averagePageCount() { +function averagePageCount(B) { // Your code here: - + let sum = 0; + let counter = 0; + for ( let i = 0; i < B.length; i++){ + let pageNumber = B[i].pages; + sum += pageNumber; + counter ++ + } + return sum/counter; } +console.log(averagePageCount(booksArray));