Как использовать фильтр на объектеJavascript

Форум по Javascript
Anonymous
Как использовать фильтр на объекте

Сообщение Anonymous »

Мой проект хочет, чтобы я использовал функцию filterBooks. Цель этой функции — фильтровать книги на основе результатов поиска. Он хочет, чтобы я использовал функцию из helper.js, называемую FlattenObjectValuesIntoArray. Эта функция циклически обрабатывает объект «книги», который находится в booklist.js, и объединяет ключи объекта в массив, чтобы мы могли выполнять поиск по всему объекту по входному значению.
Это это точная инструкция:

Функция filterBooks() принимает строку поиска и список книг в качестве параметров и возвращает все книги, содержащие точное значение. совпадение входных данных поиска как массива объектов. Объекты в этом массиве должны быть отформатированы как книги со свойствами названия, автора и тегов, аналогично исходному массиву книг. Для облегчения поиска по всем полям объекта книги следует использовать функцию FlattenObjectValuesIntoArray().

Код: Выделить всё

const filterBooks = (books, barInput) => {
return books.filter((book) => {
const values = flattenObjectValuesIntoArray([book]); // Flatten book into values
return values.some((value) =>
value.toString().toLowerCase().includes(barInput.toLowerCase())
);
});
};
Я ожидал, что когда я введу значение из объекта Books, функция filterBooks вернет книги, в которых есть это слово или значение. но когда я искал слово в строке поиска, ничего не произошло.

Подробнее здесь: https://stackoverflow.com/questions/793 ... -an-object

Вернуться в «Javascript»