【问题标题】:get unique objects from 2 array of objects从 2 个对象数组中获取唯一对象
【发布时间】:2022-01-10 21:19:47
【问题描述】:

我有 2 个对象数组:

marketingCarriers: 
[
   {
     code: "AM"
     logo: "logo1.png"
     name: "AEROMEXICO"
   }
]

operatingCarriers: 
[
  {
    code: "DL"
    logo: "logo12.png"
    name: "DELTA"
  },
  {
    code: "AM"
    logo: "logo1.png"
    name: "AEROMEXICO"
  }
]

我想通过比较这两个对象数组来创建一个数组,我将从这两个数组中放置唯一的对象。 所以输出将是:

newArray: 
    [
      {
        code: "DL"
        logo: "logo12.png"
      }
    ]

流程应该是怎样的?

【问题讨论】:

  • 所有这些对象的独特之处
  • for 循环中的 for 循环可能
  • 你这样做是为了什么?你被困在哪里了?

标签: javascript arrays javascript-objects


【解决方案1】:
    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>
          )}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-07
    • 1970-01-01
    • 2020-11-13
    • 2020-05-08
    • 2019-07-04
    • 2019-10-20
    相关资源
    最近更新 更多