[英]Remove duplicates from nested map objects javascript
我正在使用嵌套地图在网格上显示数据
{
this.state.rows.map((qc) =>
qc.BinsByDayByOrchardsQCs.map((qc2) =>
qc2.BinsByDayByOrchardsQCsDefects.map((qc3) =>
{console.log("results", qc3.Defect)}
<div className="row table">
{qc3.Defect}
</div>
)
)
)
}
哪个返回看起来像这样的数据
results Scuff results Sunburn results Bruise results Hail damage results Scuff results Sunburn results Bruise results Scuff results Sunburn results Hail damage
如何摆脱重复? 我努力了
{console.log("unique",[...new Set(qc2.BinsByDayByOrchardsQCsDefects.map((qc3) => qc3.Defect))])}
但返回映射对象的每次迭代
简单的方法是创建一个数组,在其中推送要打印的元素,然后在打印另一个元素之前检查另一个元素是否存在于数组中。
const arr = [];
{
this.state.rows.map((qc) =>
qc.BinsByDayByOrchardsQCs.map((qc2) =>
qc2.BinsByDayByOrchardsQCsDefects.map((qc3) =>
{!arr.includes(qc3.Defect) && arr.push(qc3.Defect) &&
(<div className="row table">
{qc3.Defect}
</div>)
}
)
)
)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.