登录
登录 注册新账号
注册
已有账号登录
let aa=new Map();
aa.set('a','a');
aa.set('b','a');
aa.set('c','a');
aa.set('d','a');
aa.set('e','a');
aa.set('f','a');

比如我想删除前三个,只能一个一个遍历去删除吗?

2 个回答

写法一:

aa = new Map(Array.from(aa).slice(3));

写法二:

for (let i = 0; i < 3; i ++) {
    aa.delete(aa.keys().next());
}

我觉得这个问题的关键在于:以 Map 的设计目标,本来就不打算能方便的删除"前三个"。所以,如果开发的过程中很不舒服,不妨考虑下是否数据结构没选好。

撰写答案