Ricerca…
Sintassi
- nuovo WeakSet ([iterable]);
- weakset.add (valore);
- weakset.has (valore);
- weakset.delete (valore);
Osservazioni
Per gli usi di WeakSet vedi ECMAScript 6: a cosa serve WeakSet? .
Creazione di un oggetto WeakSet
L'oggetto WeakSet viene utilizzato per memorizzare oggetti debolmente trattenuti in una raccolta. La differenza rispetto a Set è che non puoi memorizzare valori primitivi, come numeri o stringhe. Inoltre, i riferimenti agli oggetti nella raccolta sono considerati debolmente, il che significa che se non vi è altro riferimento a un oggetto memorizzato in un WeakSet, può essere sottoposto a garbage collection.
Il costruttore WeakSet ha un parametro opzionale, che può essere qualsiasi oggetto iterabile (ad esempio un array). Tutti i suoi elementi saranno aggiunti al Weakset creato.
const obj1 = {},
obj2 = {};
const weakset = new WeakSet([obj1, obj2]);
Aggiungere un valore
Per aggiungere un valore a un Weakset, utilizzare il metodo .add()
. Questo metodo è concatenabile.
const obj1 = {},
obj2 = {};
const weakset = new WeakSet();
weakset.add(obj1).add(obj2);
Verifica se esiste un valore
Per verificare se un valore esce in un Weakset, utilizzare il metodo .has()
.
const obj1 = {},
obj2 = {};
const weakset = new WeakSet([obj1]);
console.log(weakset.has(obj1)); // true
console.log(weakset.has(obj2)); // false
Rimozione di un valore
Per rimuovere un valore da un WeakSet, utilizzare il metodo .delete()
. Questo metodo restituisce true
se il valore esiste ed è stato rimosso, altrimenti false
.
const obj1 = {},
obj2 = {};
const weakset = new WeakSet([obj1]);
console.log(weakset.delete(obj1)); // true
console.log(weakset.delete(obj2)); // false