【发布时间】:2022-01-27 17:29:34
【问题描述】:
我有一个对象数组:
让数据 = [{ “自治市镇”:“布朗克斯”, “邻里”:“贝切斯特” }, { “自治市镇”:“布朗克斯”, “邻里”:“贝德福德公园” }, { “自治市镇”:“皇后区”, “邻里”:“阿斯托利亚” }, { “自治市镇”:“皇后区”, “邻里”:“奥本代尔” }, { “自治市镇”:“曼哈顿”, “邻里”:“中城东” }, { “自治市镇”:“曼哈顿”, “邻里”:“中城南” }, { “自治市镇”:“曼哈顿”, “邻里”:“中城西” }, { “自治市镇”:“布鲁克林”, “邻里”:“展望公园” }, { “自治市镇”:“布鲁克林”, “邻里”:“展望公园南” }, { “自治市镇”:“布鲁克林”, “邻里”:“红钩” }];
我想遍历它并创建一个新数组来保存唯一键, 让 newArr = [“布朗克斯、“布鲁克林”、“曼哈顿”、“皇后区”]。
我尝试的是:
const getUniqueValues = data.map((elm, i) => {
let newArr = [];
if (!newArr.includes(elm['Borough'])) {
newArr.push(elm.Borough)
}
return newArr;
}
)
但它只给了我一个元素数组,每个元素都在它自己的数组中, 所以我知道这就是 map 所做的,但是我不明白为什么重复项仍然存在。 另外,我确定我已经计算过度了,所以我会喜欢关于最简单代码的建议。 干杯!
【问题讨论】: