比较对象数组-JavaScript

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

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

我们需要编写一个函数,使用容器数组的每个对象的block键检查blocks数组的每个对象,并查看在blocks数组中是否存在不存在于容器数组中的任何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
猜你喜欢