我已经创建了一些数组,并想在其中搜索一些字符串数据。所以我发现我可以将所有数组连接在一起,并应该在其中搜索我需要搜索的数据。但是问题是当我尝试搜索最终数组时,它给了我错误。在下面发布代码。
const filters = {
listName: '',
name: '',
number: '',
designation: ''
};
let mpc = getSavedArray('mpcData');
let mpe = getSavedArray('mpeData');
let div = getSavedArray('divData');
let dist = getSavedArray('distData');
let teh = getSavedArray('tehData');
const allArrays = function () {
return (mpe.concat(mpc, dist, div, teh));
};
console.log(allArrays());
const searchData = function (arrays, filters) {
const filteredArray = arrays.filter(function (query) {
return query.name.toLowerCase().includes(filters.name.toLowerCase())
})
document.querySelector('#search-results').innerHTML = ''
filteredArray.forEach(function (query) {
const allResult = generateDomElement(query)
document.querySelector('#search-results').appendChild(allResult)
})
};
searchData(allArrays, filters);
document.querySelector('#search-record').addEventListener('input', function(e){
filters.name = e.target.value
searchData(allArrays, filters);
})
答案 0 :(得分:0)
您正在将函数allArrays
本身传递给searchData
。您应该调用它。
searchData(allArrays, filters);
应该是
searchData(allArrays(), filters);