Javascript 根据匹配的键/值属性筛选对象数组?

Javascript 根据匹配的键/值属性筛选对象数组?,javascript,Javascript,这就是我试图解决的问题。我知道如何与对象进行直接比较,但我知道如何在过滤器fx中进行非此即彼或属性比较 // tasks are objs with {name: string,id: int} const taskArray = [task1, task2, task3, task3]; // f(x) needs to take obj param and see if it matches either/or with // any task obj k/v pair // my i

这就是我试图解决的问题。我知道如何与对象进行直接比较,但我知道如何在过滤器fx中进行非此即彼或属性比较

// tasks are objs with {name: string,id: int}

const taskArray = [task1, task2, task3, task3];

// f(x) needs to take obj param and see if it matches either/or with 
// any task obj k/v pair
// my implementation so far, missing something important, help here


const filterTasks = (taskArray, obj) => {
  taskArray.filter( task => Object.keys(task)  // i know I have to do some equality opperator here but stuck

  return taskArray;
}
就在那里。
filterTasks
将返回一个数组,该数组仅包含传递数组中与传递对象中至少1个key/val对匹配的任务

tArr=[{name:“你好”,id:1},{name:“你好”,id:2},{name:“你好”,id:3},{name:“再见”,id:4}];
const filterTasks=(taskArray,obj)=>taskArray.filter(task=>Object.keys(task).some(key=>obj[key]&&obj[key]==task[key]);
log(filterTasks(tArr,{name:“hi”,id:2}))在那里。
filterTasks
将返回一个数组,该数组仅包含传递数组中与传递对象中至少1个key/val对匹配的任务

tArr=[{name:“你好”,id:1},{name:“你好”,id:2},{name:“你好”,id:3},{name:“再见”,id:4}];
const filterTasks=(taskArray,obj)=>taskArray.filter(task=>Object.keys(task).some(key=>obj[key]&&obj[key]==task[key]);


log(filterTasks(tArr,{name:“hi”,id:2}))
能否请您提供有关筛选条件的更多信息?是的,我想根据taskArr筛选一些匹配项,并将其与传入对象的一些键或值匹配。这不是dup!所以,无论是相同的名称还是相同的id,或者两者都应该匹配,对吗?ys Attersson我知道如何匹配基本对象。请提供有关筛选条件的更多信息。是的,我想根据taskArr筛选一些匹配项,并将其与传入对象的一些键或值匹配。这不是dup!所以,无论是相同的名字还是相同的id,或者两者都应该匹配,对吗?我知道如何匹配一个基本的对象。我总是忘了some()方法。谢谢,那只是我的浏览器崩溃了。很抱歉,你很好。如果主持人不在这个网站上投票给我,我甚至不能问一个合法的问题。我很高兴至少你给了我一个机会我总是忘了some()方法谢谢那只是我的浏览器崩溃很抱歉你很好如果主持人不在这个网站上投票否决我,我似乎连一个合法的问题都问不出来。我很高兴至少你给了我一个机会