-
青春有我
数组的filter方法就是这样做的,但如果你想包装它,你可以做这样的事情......var jobs= [ { "startDate": "5/2017", "endDate": null, "isCurrent": true, "seniority": "Senior", }, { "startDate": "5/2013", "endDate": "5/2019", "isCurrent": false, "seniority": "Junior", },]const nameOfFunction = (ar, key, val) => ar.filter(obj=>obj[key]===val);var results = nameOfFunction(jobs,"seniority","Senior") console.log(results);
-
慕田峪4524236
您可以使用filter:var jobs= [ { "startDate": "5/2017", "endDate": null, "isCurrent": true, "seniority": "Senior", }, { "startDate": "5/2013", "endDate": "5/2019", "isCurrent": false, "seniority": "Junior", },]const findObject = (obj, prop, value) => obj.filter(obj => obj[prop] === value)console.log(findObject(jobs, 'seniority', 'Senior'))编辑:var jobs= [ { "startDate": "5/2017", "endDate": null, "isCurrent": true, "seniority": "Senior", }, { "startDate": "5/2013", "endDate": "5/2019", "isCurrent": false, "seniority": "Junior", },]const findObject = (obj, prop, value, key) => obj.filter(obj => obj[prop] === value).map(obj => obj[key])console.log(findObject(jobs, 'seniority', 'Senior', 'startDate'))
-
白板的微信
您可以filter在传入的数组上使用该方法。在这里,我也用解构赋值来获取值(v从通过当前对象的)key。然后我将对象 ( v)的值与val传递给函数的值进行比较,以查看它是否应该保留在新数组中。请参阅下面的示例:const jobs= [ { "startDate": "5/2017", "endDate": null, "isCurrent": true, "seniority": "Senior", }, { "startDate": "5/2013", "endDate": "5/2019", "isCurrent": false, "seniority": "Junior", },];const filterArr = (arr, key, val) => arr.filter(({[key]:v}) => v===val); console.log(filterArr(jobs, "seniority", "Senior"));