Javat脚本过滤器数组和显示项

时间:2018-11-16 23:17:54

标签: javascript array-filter

我如何在过滤后的阵列中记录单个项目?

let data= [ { id: 1, name: 'Mike', city: 'philps', state:'New York'}, { id: 2, name: 'Steve', city: 'Square', state: 'Chicago'}, { id: 3, name: 'Jhon', city: 'market', state: 'New York'}, { id: 4, name: 'philps', city: 'booket', state: 'Texas'}, { id: 5, name: 'smith', city: 'brookfield', state: 'Florida'}, { id: 6, name: 'Broom', city: 'old street', state: 'Florida'}, ]

data = data.filter((item) => item.state == 'New York').map(({id, name, city}) => ({id, name, city}));
console.log(data.name);//--->>> get an item-----------

2 个答案:

答案 0 :(得分:1)

如果只想使用第一项,则可以使用.find(),如下所示:

data = data.find((item) => item.state == 'New York'); console.log(data.name);

如果要显示与过滤器匹配的所有项目,可以使用foreach:

data = data.filter((item) => item.state == 'New York').forEach(d=> console.log(d.name));

问题是:您真正想要什么?

答案 1 :(得分:0)

console.log(data.length && data [0] .name)。地图在您的代码中没有用