Creates a frozen Set object.
- Use the
Setconstructor to create a newSetobject fromiterable. - Set the
add,deleteandclearmethods of the newly created object toundefined, so that they cannot be used, practically freezing the object.
代码实现
const frozenSet = iterable => {
const s = new Set(iterable);
s.add = undefined;
s.delete = undefined;
s.clear = undefined;
return s;
};
frozenSet([1, 2, 3, 1, 2]);
// Set { 1, 2, 3, add: undefined, delete: undefined, clear: undefined }