References

Set()

Leírás

A halmaz egy olyan adatstruktúra, melyben az összes elem egyszer szerepelhet (típus szerint is történik az egyelőség vizsgálat). Az adatok sorrendje attól függ, hogy melyiket mikor szúrták be. Amikor a halmazt először inicializáljuk egy tömbbel több elemmel benne, a halmaz nem egyetlen elemmel fog rendelkezni, hanem azon tömb elemeivel. A későbbiekben egy tömb egy eleme lesz a halmaznak.

TulajdonságLeírás
constructor
constructorvisszatér a halmaz konstruktor függvénnyel
size
sizeaz elemek száma
MetódusLeírás
add(value)
add(value)új értéket ad
entries()
entries()visszatér az összes kulcs-érték párral, amit a Set példánya tartalmaz
values()
values()visszatér az összes kulcs érték pár értékkel, amig Set példányában található
keys()
keys()visszatér az összes kulcs-érték párral ami a Set példányában található
has(key)
has(key)visszatér az logikai értékkel a szerint, hogy a metódus argumentumában a paraméter értéke szerepel-e a Set példányában
forEach(fcallbackFun)
forEach(fcallbackFun)az összes elemen végigiteráltatja a Set példányán a metódus argumentumában definiált függvényt
clear()
clear()az összes érték törlődik a Set példányábanminden elem törlése
delete(key)
delete(key)azon érték törlődik a Set példányában, amelynek értéke megegyezik a metódus argumentumába írt értékkel

Szintaxis

new Set()
size
 
set.add(value)
set.entries()
set.values()
set.keys()
set.has(value)
set.forEach(callbackFn)
set.clear()
set.delete(value)

Példa

add(value)

const mySet = new Set()
 
mySet.add(42)
mySet.add(42)
mySet.add(13)
 
for (const item of mySet) {
  console.log(item)
  // Expected output: 42
  // Expected output: 13
}

entries()

const mySet = new Set()
 
mySet.add(42)
mySet.add('forty two')
 
const iterator1 = mySet.entries()
 
for (const entry of iterator1) {
  console.log(entry)
  // Expected output: Array [42, 42]
  // Expected output: Array ["forty two", "forty two"]
}

values()

const mySet = new Set()
 
const iterator1 = mySet.values()
 
console.log(iterator1.next().value)
// Expected output: 42
 
console.log(iterator1.next().value)
// Expected output: "forty two"

keys()

const mySet = new Set()
mySet.add('foo')
mySet.add('bar')
 
const setIter = mySet.keys()
 
console.log(setIter.next().value)
// Expected output: "foo"
 
console.log(setIter.next().value)
// Expected output: "bar"

has(value)

const mySet = new Set([1, 2, 3, 4, 5])
 
console.log(mySet.has(1))
// Expected output: true
 
console.log(mySet.has(6))
// Expected output: false

forEach(callbackFun)

const mySet = new Set()
 
function logSetElements(value1, value2, set) {
  console.log(`s[${value1}] = ${value2}`)
}
 
new Set(['foo', 'bar', undefined]).forEach(logSetElements)
// Expected output: "s[foo] = foo"
// Expected output: "s[bar] = bar"
// Expected output: "s[undefined] = undefined"

clear()

const mySet = new Set()
 
mySet.add(1)
mySet.add('foo')
 
console.log(mySet.size)
// Expected output: 2
 
mySet.clear()
 
console.log(mySet.size)
// Expected output: 0

delete(value)

const mySet = new Set()
 
mySet.add({ x: 10, y: 20 }).add({ x: 20, y: 30 })
 
// Delete any point with `x > 10`.
mySet.forEach((point) => {
  if (point.x > 10) {
    mySet.delete(point)
  }
})
 
console.log(mySet.size)
// Expected output: 1

size

const mySet = new Set()
 
const object1 = {}
 
mySet.add(42)
mySet.add('forty two')
mySet.add('forty two')
mySet.add(object1)
 
console.log(mySet.size)
// Expected output: 3
in this article
back to top