js使用数组过滤方法和数组遍历方法实现童书查询效果
时间: 2023-07-07 08:21:54 浏览: 171
假设我们有一个童书列表,每本童书包含书名和作者两个属性。我们可以使用数组的 `filter()` 方法来根据关键字查询童书,使用数组的遍历方法(如 `forEach()` 或 `map()`)来展示查询结果。
下面是一个简单的示例代码:
```javascript
const childrenBooks = [
{ title: '小熊和小兔', author: '张三' },
{ title: '小狗和小猫', author: '李四' },
{ title: '小鸟和小鱼', author: '王五' },
];
// 根据关键字查询童书
function searchBooks(keyword) {
const result = childrenBooks.filter((book) => {
return book.title.includes(keyword) || book.author.includes(keyword);
});
return result;
}
// 展示查询结果
function showResult(result) {
if (result.length === 0) {
console.log('没有找到相关的童书。');
} else {
result.forEach((book) => {
console.log(`书名:${book.title},作者:${book.author}`);
});
}
}
// 使用示例
const keyword = '小熊';
const result = searchBooks(keyword);
showResult(result);
```
在代码中,我们首先定义了一个童书列表 `childrenBooks`。然后定义了一个 `searchBooks()` 函数,该函数接收一个关键字作为参数,使用 `filter()` 方法对童书列表进行过滤,筛选出包含关键字的童书,并返回查询结果。最后,我们定义了一个 `showResult()` 函数,该函数接收查询结果作为参数,使用 `forEach()` 方法遍历查询结果,展示每本童书的书名和作者。最后,我们使用这两个函数展示了一个查询结果。
当然,这只是一个简单的示例代码,您可以根据实际需求进行修改和拓展。
阅读全文