写个JS通用匹配数据
以下是一个用于匹配数据的通用 JavaScript 函数示例:
function matchData(data, criteria) {
// 创建一个用于存储匹配结果的数组
let matches = [];
// 遍历数据数组
for (let i = 0; i < data.length; i++) {
let item = data[i];
let isMatch = true;
// 遍历条件对象的属性
for (let key in criteria) {
if (item[key] !== criteria[key]) {
// 如果数据项的属性值与条件不匹配,则设置 isMatch 为 false 并立即跳出内循环
isMatch = false;
break;
}
}
// 如果 isMatch 为 true,则将数据项添加到匹配结果数组中
if (isMatch) {
matches.push(item);
}
}
// 返回匹配结果数组
return matches;
}
使用示例:
// 示例数据数组
let data = [
{ name: 'John', age: 25, city: 'New York' },
{ name: 'Jane', age: 30, city: 'San Francisco' },
{ name: 'Bob', age: 35, city: 'New York' }
];
// 示例条件对象
let criteria = {
age: 30,
city: 'San Francisco'
};
// 调用 matchData 函数进行数据匹配
let result = matchData(data, criteria);
// 输出匹配结果
console.log(result);
运行以上示例,将输出一个只包含满足条件的数据项的数组:
[
{ name: 'Jane', age: 30, city: 'San Francisco' }
]
``
原文地址: http://www.cveoy.top/t/topic/idbK 著作权归作者所有。请勿转载和采集!