[英]get unique objects from 2 array of objects
我有 2 个对象数组:
marketingCarriers:
[
{
code: "AM"
logo: "logo1.png"
name: "AEROMEXICO"
}
]
operatingCarriers:
[
{
code: "DL"
logo: "logo12.png"
name: "DELTA"
},
{
code: "AM"
logo: "logo1.png"
name: "AEROMEXICO"
}
]
我想通过比较这两个对象数组来创建一个数组,我将把这两个 arrays 中的唯一对象放在其中。 所以 output 将是:
newArray:
[
{
code: "DL"
logo: "logo12.png"
}
]
流程应该是怎样的?
您可以尝试使用Array.prototype.filter()
和Array.prototype.some()
如下方式:
var marketingCarriers = [ { code: "AM", logo: "https://meta-staging.welltravel.com/media/W1siZiIsIjIwMTcvMTIvMDgvMDkvMzUvMjRhY2FjZjktZjc5Zi00YWUyLWI0Y2MtZDgxMDViMjkzZWM2Il1d?sha=d121026cc0675306", name: "AEROMEXICO" } ] var operatingCarriers = [ { code: "DL", logo: "https://meta-staging.welltravel.com/media/W1siZiIsIjIwMTcvMTIvMDgvMDkvMzUvMjRhY2FjZjktZjc5Zi00YWUyLWI0Y2MtZDgxMDViMjkzZWM2Il1d?sha=d121026cc0675306", name: "DELTA" }, { code: "AM", logo: "https://meta-staging.welltravel.com/media/W1siZiIsIjIwMTcvMTIvMDgvMDkvMzUvMjRhY2FjZjktZjc5Zi00YWUyLWI0Y2MtZDgxMDViMjkzZWM2Il1d?sha=d121026cc0675306", name: "AEROMEXICO" } ]; var newArray = operatingCarriers.filter(oc => marketingCarriers.some(mc => mc.code.= oc;code)). console;log(newArray);
const operators = operatingCarriers.filter(operating =>
marketingCarriers.some(marketing => marketing.code !== operating.code),
);
const hasUniqueCarriers =
JSON.stringify(operatingCarriers) !== JSON.stringify(marketingCarriers);
{hasUniqueCarriers && operators.length > 0 && (
<div className="flight__operating-carrier-info">
<div>{I18n.t('components.flight_info.operated_by')}</div>
<div className="flight__operating-carrier-list">
{operators.map(carrier => (
<div>{carrier.name}</div>
))}
</div>
</div>
)}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.