js写一个实现模糊查询方法数组里面是对象
时间: 2024-01-22 07:19:52 浏览: 64
JS实现模糊查询
假设要实现的模糊查询方法是 `fuzzySearch(query, arr)`,其中 `query` 是查询字符串,`arr` 是包含对象的数组,对象具有属性 `name`,表示需要被查询的名称。
以下是一个可能的实现:
```javascript
function fuzzySearch(query, arr) {
return arr.filter(function(obj) {
// 将查询字符串和名称都转化为小写字母,以便进行不区分大小写的匹配
var name = obj.name.toLowerCase();
query = query.toLowerCase();
// 判断名称是否包含查询字符串
return name.indexOf(query) !== -1;
});
}
```
例如,如果有以下数据:
```javascript
var data = [
{ name: 'apple' },
{ name: 'banana' },
{ name: 'orange' },
{ name: 'pear' }
];
```
调用 `fuzzySearch('a', data)` 将返回:
```javascript
[
{ name: 'apple' },
{ name: 'banana' },
{ name: 'orange' }
]
```
调用 `fuzzySearch('e', data)` 将返回:
```javascript
[
{ name: 'apple' },
{ name: 'pear' }
]
```
阅读全文