Example of an object in the books array:
const books = [
{
id: "5f447132d487bd81da01e25e",
title: "sit eiusmod occaecat eu magna",
genre: "Science",
authorId: 8,
borrows: [
{
id: "5f446f2e2cfa3e1d234679b9",
returned: false,
},
{
id: "5f446f2ed3609b719568a415",
returned: true,
},
{
id: "5f446f2e1c71888e2233621e",
returned: true,
},
{
id: "5f446f2e6059326d9feb9a68",
returned: true,
},
{
id: "5f446f2ede05a0b1e3394d8b",
returned: true,
},
{
id: "5f446f2e4081699cdc6a2735",
returned: true,
},
{
id: "5f446f2e3900dfec59489477",
returned: true,
},
{
id: "5f446f2e6059326d9feb9a68",
returned: true,
},
{
id: "5f446f2e409f8883af2955dd",
returned: true,
},
{
id: "5f446f2e3900dfec59489477",
returned: true,
},
{
id: "5f446f2eae901a82e0259947",
returned: true,
},
{
id: "5f446f2ef2ab5f5a9f60c4f2",
returned: true,
},
{
id: "5f446f2ea6b68cf6f85f6e28",
returned: true,
},
{
id: "5f446f2eed18105706d6ca19",
returned: true,
},
{
id: "5f446f2eae901a82e0259947",
returned: true,
},
{
id: "5f446f2e91c2af00cb74e82b",
returned: true,
},
{
id: "5f446f2e5aa2bb5545a0f8a6",
returned: true,
},
{
id: "5f446f2ea508b6a99c3e42c6",
returned: true,
},
{
id: "5f446f2e50cc2da9cd80efdb",
returned: true,
},
{
id: "5f446f2e0b3e2ff72fc503e7",
returned: true,
},
{
id: "5f446f2e91c2af00cb74e82b",
returned: true,
},
{
id: "5f446f2ef795e593cd3cd19d",
returned: true,
},
{
id: "5f446f2e2f35653fa80bf490",
returned: true,
},
{
id: "5f446f2e7b9cd304fed3a8bc",
returned: true,
},
{
id: "5f446f2ed9aac23c0340aab2",
returned: true,
},
],
},
Example of an object in the accounts array:
const accounts = [
{
id: "5f446f2ecfaf0310387c9603",
picture: "https://api.adorable.io/avatars/75/[email protected]",
age: 25,
name: {
first: "Esther",
last: "Tucker",
},
company: "ZILLACON",
email: "[email protected]",
registered: "Thursday, May 28, 2015 2:51 PM",
},
I need to write the function getBorrowersForBook() that does this: It should return an array of all the transactions from the book's borrows key. However, each transaction should include the related account information and the returned key, like so:
(It should also limit the number of objects in the array to 10.)
getBorrowersForBook(book, accounts);
[
{
id: "5f446f2e4eff1030e7316861",
returned: true,
picture: "https://api.adorable.io/avatars/75/[email protected]",
age: 37,
name: {
first: "Barber",
last: "Waters",
},
company: "KEGULAR",
email: "[email protected]",
registered: "Tuesday, April 14, 2020 9:15 PM",
},
{
id: "5f446f2ecc5c4787c403f844",
returned: true,
picture: "https://api.adorable.io/avatars/75/[email protected]",
age: 34,
name: {
first: "Dyer",
last: "Trevino",
},
company: "SLAX",
email: "[email protected]",
registered: "Saturday, August 1, 2015 8:13 PM",
},
]
This is what I have so far:
function getBorrowersForBook(book, accounts) {
const { name, company, email, registered } = accounts;
const { borrows } = book;
let resultArray = [];
let resultObject = borrows.filter((borrow) => {
if (borrow > 1) {
resultArray.push({ borrows, name, company, email, registered });
}
});
resultArray.sort((resultA, resultB) => (resultA > resultB ? -1 : 1));
resultArray.splice(0, 10);
return resultArray;
}