的安全代码new Set()
可能如下所示:
let items = [];
for (let item of set)
if (isBad(item))
items.push(item);
for (let item of items)
set.delete(item)
我可以将代码简化为:
for (let item of set)
if (isBad(item))
set.delete(item);
的安全代码new Map()
可能如下所示:
let keys = [];
for (let [key, val] of map)
if (isBadKey(key) || isBadValue(val))
keys.push(key);
for (let key of keys)
map.delete(key)
我可以将代码简化为:
for (let [key, val] of map)
if (isBadKey(key) || isBadValue(val))
map.delete(key)