【发布时间】:2021-03-03 12:09:51
【问题描述】:
我需要删除重复的产品字段并保留价格最低的那个
var store = [
{price: 730, product: "BSB", ida: 1614237278000},
{price: 780, product: "SSA", ida: 1613237278000},
{price: 832, product: "CWB", ida: 1614237278000},
{price: 600, product: "POA", ida: 1601942490000},
{price: 860, product: "POA", ida: 1601942490000},
{price: 730, product: "BSB", ida: 1614237278000},
{price: 832, product: "CWB", ida: 1614237278000},
{price: 600, product: "POA", ida: 1601942490000},
{price: 1020, product: "POA", ida: 1601942490000}
];
方法后我想要的结果数组是这样的:
var store = [
{price: 730, product: "BSB", ida: 1614237278000},
{price: 780, product: "SSA", ida: 1613237278000},
{price: 832, product: "CWB", ida: 1614237278000},
{price: 600, product: "POA", ida: 1601942490000},
];
我正在尝试做这样的事情,但它不会工作
store.map(product => {
var duplicates = product.filter((product2 , index) => {
if(product["product"] === product2["product"]) {
store.splice(index, 1);
return true;
}
return false;
});
var minValueInDuplicates = Math.min(...duplicates.map(d => d["price"]));
var singleDuplicate = duplicates.find(d => d["price"] === minValueInDuplicates);
return singleDuplicate;
});
【问题讨论】:
标签: javascript arrays duplicates