对比对象数组 - JavaScript


我们有两个这样的对象数组 -

const blocks = [
   { id: 1 },
   { id: 2 },
   { id: 3 },
   { id: 4 },
]
const containers = [
   { block: { id: 1 } },
   { block: { id: 2 } },
   { block: { id: 3 } },
]

我们需要编写一个函数,用每个容器数组对象块键检查块数组的每个对象,并判断块数组中是否存在任何未出现在容器数组中的 ID。如果存在,我们返回 false,否则我们返回 true。

示例

我们来编写一下代码 -

const blocks = [
   { id: 1 },
   { id: 2 },
   { id: 3 },
   { id: 4 },
]
const containers = [
   { block: { id: 1 } },
   { block: { id: 2 } },
   { block: { id: 3 } },
]
const checkProperty = (first, second) => {
   const findInContainers = id => {
      for(let i = 0; i < second.length; i++){
         if(second[i].block.id === id){
            return true;
         };
      };
      return false;
   };
   for(let i = 0; i < first.length; i++){
      if(!findInContainers(first[i].id)){
         return false;
      };
   };
   return true;
};
console.log(checkProperty(blocks, containers));

输出

以下是在控制台中输出的内容 -

false

更新于: 14-Sep-2020

1K+ 查看

职业生涯起步

完成课程获得认证

开始学习
广告