数组中的JS map元素

时间:2015-11-24 11:08:21

标签: javascript arrays

我有一个数组和一张相互比较的地图。但是我遇到了一个问题,如何检查数组是否得到了地图中的元素(或键)。当密钥不在数组中时,他应该什么都不做。数组应该决定"好吧..我没有那个元素。所以我删除了地图中不再使用的密钥"

这是我的源代码



for (var i = 0; i < array.length; i++) {
                
  // check if map got array element
  if (!self.map.has(array[i])) {
  self.map.set(array[i]);
   }

  // right here i need your help
  if (array.) {}
}
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

你应该这样做。找到阵列中不存在的所有键。然后迭代键并删除它们。这对你有用吗?

 var keysNotPresentInArray=  Array.from(map.keys()).filter(function(i,index){

        return myArray.indexOf(i)<0;

  });

keysNotPresentInArray.forEach(function(i,index){

     map.delete(i);
  })