2017-05-10 206 views
0

比方说,我有对象检查对象具有特定属性

const arr = [ {name:"Bob", age: 20}, { name: "Sara", age: 22}, { name: 
Tom, age:20} ]; 

我想打印与特定属性对象的数组,例如只有那些年龄== 20所以其结果将是

const arr = [ {name:"Bob", age: 20}, { name: Tom, age:20} ]; 

我真的很想用ES6来做。你有什么建议可以使用什么方法?

+5

'arr.filter(X => x.age == 20)' – haim770

+0

太谢谢你了! – Polina

回答

4

这将做

var filteredData = arr.filter((e) => e.age === 20) 
+0

你能解释一下它是如何做到这一点的? –

+0

filter()是现在Array上可用的函数。它遍历整个数组并返回与条件匹配的值。在以上情况下,年龄== 20。 =>来自ES6的函数在这里提供了一个捷径......所以你不需要显式地“返回”该值。它会自动完成(如果你只有一行代码)。 – ivp

+0

有关更多详细信息和示例,可以在MDN上阅读它:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter?v=example –

相关问题