Sök…


Syntax

  • nya WeakSet ([iterable]);
  • weakset.add (värde);
  • weakset.has (värde);
  • weakset.delete (värde);

Anmärkningar

För användning av WeakSet, se ECMAScript 6: vad är WeakSet för? .

Skapa ett WeakSet-objekt

WeakSet-objektet används för att lagra svagt hållna objekt i en samling. Skillnaden från Set är att du inte kan lagra primitiva värden, som nummer eller sträng. Hänvisningar till objekten i samlingen hålls också svagt, vilket innebär att om det inte finns någon annan hänvisning till ett objekt lagrat i en WeakSet, kan det samlas in skräp.

WeakSet-konstruktören har en valfri parameter, som kan vara vilket som helst iterbart objekt (till exempel en matris). Alla dess element kommer att läggas till det skapade WeakSet.

const obj1 = {},
      obj2 = {};

const weakset = new WeakSet([obj1, obj2]);

Lägga till ett värde

För att lägga till ett värde i en WeakSet använder .add() metoden .add() . Denna metod är kedjbar.

const obj1 = {},
      obj2 = {};

const weakset = new WeakSet();
weakset.add(obj1).add(obj2);

Kontrollera om ett värde finns

För att kontrollera om ett värde existerar i en WeakSet använder .has() metoden .has() .

const obj1 = {},
      obj2 = {};

const weakset = new WeakSet([obj1]);
console.log(weakset.has(obj1)); // true
console.log(weakset.has(obj2)); // false

Ta bort ett värde

För att ta bort ett värde från en WeakSet använder .delete() metoden .delete() . Denna metod returnerar true om värdet fanns och har tagits bort, annars false .

const obj1 = {},
      obj2 = {};

const weakset = new WeakSet([obj1]);
console.log(weakset.delete(obj1)); // true
console.log(weakset.delete(obj2)); // false


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow