在没有键的情况下循环遍历 Map JavaScript



有没有办法在不知道任何键的情况下循环浏览JavaScript Map?删除满足特定条件的每个迭代?

let map = new Map();

您可以在MapforEach以获取每个键值对,如果值不满足条件,请使用键调用delete

const map = new Map([
  [1, 2],
  [3, 4],
  [5, 6]
]);
map.forEach((val, key) => {
  if (val < 3) {
    map.delete(key);
  }
});
console.log([...map.entries()]);

我猜"Javascript Map"是指一个对象,对吧?如果是这样,您可以使用 Object.keys(( 动态获取对象属性

因此,这是动态对象迭代的示例:

let randomObj = {
    randomProperty: 'randomValue',
    randomProperty2: 'randomValue2',
}
const properties = Object.keys(randomObj);
properties.forEach(prop => {
    if (someCriteriaYouHave(prop))
        delete(randomObj[prop]);
});

如果需要属性值来确定是否要删除它,可以使用以下命令获取它:

var propValue = randomObj[prop];

最新更新