Javascript 如何映射和过滤react js中的重复值
如何获取类别id列数据的唯一值 这是我的控制台日志数据Javascript 如何映射和过滤react js中的重复值,javascript,reactjs,Javascript,Reactjs,如何获取类别id列数据的唯一值 这是我的控制台日志数据 0: {category_id: "37", status: "4", category_name: "GO Thrones"} 1: {category_id: "41", status: "3", category_name: "need for speed"} 2: {category_id: "84", status: "4", category_name: "new"} 3: {category_id: "41", status:
0: {category_id: "37", status: "4", category_name: "GO Thrones"}
1: {category_id: "41", status: "3", category_name: "need for speed"}
2: {category_id: "84", status: "4", category_name: "new"}
3: {category_id: "41", status: "3", category_name: "need for speed"}
4: {category_id: "37", status: "4", category_name: "GO Thrones"}
使用Object.keys()我们可以使用.reduce()返回所有唯一的Id值
const data = {
0: {category_id: "37", status: "4", category_name: "GO Thrones"},
1: {category_id: "41", status: "3", category_name: "need for speed"},
2: {category_id: "84", status: "4", category_name: "new"},
3: {category_id: "41", status: "3", category_name: "need for speed"},
4: {category_id: "37", status: "4", category_name: "GO Thrones"}
}
const results = (data) =>
Object.keys(data).reduce((result, key) => {
(!~result.indexOf(data[key].category_id)) &&
result.push(data[key].category_id);
return result
}, [])
console.log(results(data)); // [ '37', '41', '84' ]
为了方便起见,这里将相同的代码重构为一行,虽然显然不那么清晰
const results = (d) => Object.values(d).reduce((r, i) => !~r.indexOf(i.category_id) ? (r.push(i.category_id), r) : r , []);
console.log(results(data)); // [ '37', '41', '84' ]
您希望category_id是唯一的number@MaheerAli对sir@Gnanaseelan预期的outputpendingProductList.map(category=>console.log(“mydata=”,category.category_id))是什么;现在我得到了所有的category_id(37,41,84,41,37)@Gnanaseelan,如果它在数组中不存在,我已经更新为只显示category id