diff --git a/src/challenge.ts b/src/challenge.ts index d697960..369101a 100644 --- a/src/challenge.ts +++ b/src/challenge.ts @@ -39,6 +39,13 @@ function addReview( comment: string ): ReviewedBook { // write your code here... + const newReview = { + reviewer: reviewer, + comment: comment, + }; + if (newReview !== null) { + book.reviews?.push(newReview); + } return book; } diff --git a/src/objects.ts b/src/objects.ts index ef6298f..3ce1ac2 100644 --- a/src/objects.ts +++ b/src/objects.ts @@ -27,8 +27,14 @@ function createBook( genre: string ): Book { // write your code here... + const newBook: Book = { + title: title, + author: author, + publishedYear: publishedYear, + genre: genre, + }; - return {} as Book; // replace "{} as Book" with what you see is fit + return { title, author, publishedYear, genre } as Book; // replace "{} as Book" with what you see is fit } // DO NOT CHANGE THE LINE OF CODE BELOW (you can use it for testing your code) @@ -51,7 +57,7 @@ const book = createBook( function printBookTitleAndYear(book: Book): string { // write your code here... - return ""; // replace empty string with what you see is fit + return book.title + " " + book["publishedYear"]; // replace empty string with what you see is fit } /** @@ -66,6 +72,7 @@ function printBookTitleAndYear(book: Book): string { */ function addPageCount(book: Book, pageCount: number): Book { // write your code here... + book.pageCount = pageCount; return book; } @@ -88,6 +95,7 @@ function addPageCount(book: Book, pageCount: number): Book { */ function addISBN(book: Book, ISBN: string): Book { // write your code here... + book.ISBN = ISBN; return book; } @@ -110,7 +118,7 @@ function addISBN(book: Book, ISBN: string): Book { */ function updatePublishedYear(book: Book, newYear: number): Book { // write your code here... - + book.publishedYear = newYear; return book; } @@ -136,6 +144,14 @@ function updatePublishedYear(book: Book, newYear: number): Book { function addSecondAuthor(book: Book, additionalAuthor: string): Book { // write your code here... + if (Array.isArray(book.author)) { + // clause gaurd + book.author.push(additionalAuthor); + } else { + const author = book.author; + book.author = [author, additionalAuthor]; + } + return book; }