Prepare repository for merge
This commit is contained in:
27
javascript/snippets/frozen-set.md
Normal file
27
javascript/snippets/frozen-set.md
Normal file
@ -0,0 +1,27 @@
|
||||
---
|
||||
title: Freeze Set object
|
||||
type: snippet
|
||||
tags: [array]
|
||||
cover: frozen-globe
|
||||
dateModified: 2020-10-11T11:52:48+03:00
|
||||
---
|
||||
|
||||
Creates a frozen `Set` object.
|
||||
|
||||
- Use the `Set` constructor to create a new `Set` object from `iterable`.
|
||||
- Set the `add`, `delete` and `clear` methods of the newly created object to `undefined`, so that they cannot be used, practically freezing the object.
|
||||
|
||||
```js
|
||||
const frozenSet = iterable => {
|
||||
const s = new Set(iterable);
|
||||
s.add = undefined;
|
||||
s.delete = undefined;
|
||||
s.clear = undefined;
|
||||
return s;
|
||||
};
|
||||
```
|
||||
|
||||
```js
|
||||
frozenSet([1, 2, 3, 1, 2]);
|
||||
// Set { 1, 2, 3, add: undefined, delete: undefined, clear: undefined }
|
||||
```
|
||||
Reference in New Issue
Block a user