我有N个对象的数组。我想编写一个过滤器,该过滤器根据多个动态属性使用JSON.stringify进行过滤。
但是动态的却没有静态属性(如上面的代码)
你有什么想法吗?
return items.filter(item =>
JSON.stringify(item.prop1 && item.prop2 && ....)
.toLowerCase()
.includes(searchParam)
);
答案 0 :(得分:0)
您将不得不编写一个函数,将您的对象转换为仅具有所需属性的精简对象:
document.getElementById("upgrade3").style.display = "block";
然后您的代码将如下所示:
function getProperties(obj, propList) {
var newObj = {};
propList.forEach(prop => {
newObj[prop] = obj[prop];
});
return newObj;
}
答案 1 :(得分:0)
$file = file_get_contents("pdf.pdf");
$fileData = base64_encode($file);
echo $fileData;
使用 items.filter(item => ["prop1", "prop2"].some(key => item[key].toLowerCase() === searchParam))
将对象转换为可搜索的字符串是一个坏主意,因为关键字也包含在搜索中,并且比遍历所需的关键字要慢得多。