Sobes.tech
Junior

Aké dátové štruktúry existujú v JavaScript?

sobes.tech AI

Odpoveď od AI

Najjednoduchšie typy údajov: String (reťazce), Number (čísla), BigInt (veľké celé čísla), Boolean (logický typ), Undefined (neurčená hodnota), Symbol (symboly), Null (prázdna hodnota).

Zložité dátové štruktúry:

  • Object (objekt): Kolekcia párov kľúč-hodnota.
    // Jednoduchý objekt
    const user = {
      name: 'Ivan',
      age: 30
    };
    
  • Array (zoznam): Usporiadaná kolekcia prvkov.
    // Zoznam čísel
    const numbers = [1, 2, 3, 4, 5];
    
  • Map (mapa): Kolekcia pár kľúč-hodnota, kde kľúče môžu byť akéhokoľvek typu a zachovávajú poradie vloženia.
    // Mapa s rôznymi typmi kľúčov
    const map = new Map();
    map.set('name', 'Peter');
    map.set(1, 'číslo');
    
  • Set (množina): Kolekcia unikátnych hodnôt akéhokoľvek typu.
    // Množina unikátnych čísel
    const set = new Set([1, 2, 2, 3, 4, 4]); // Obsahuje [1, 2, 3, 4]
    
  • Typed Arrays (typované polia): Polia s pevnou dĺžkou, ktorých prvky majú určený číselný typ (napríklad Int8Array, Uint8Array, Float32Array).
    // Typované pole bajtov
    const byteArray = new Uint8Array([10, 20, 30]);
    
  • WeakMap (slabá mapa): Podobná Map, ale jej kľúče musia byť objekty, a nebránia garbage collectoru odstrániť s nimi spojené objekty.
    // Slabá mapa
    const weakMap = new WeakMap();
    const obj1 = {};
    weakMap.set(obj1, 'údaje 1');
    
  • WeakSet (slabé množstvo): Podobné Set, ale jeho prvky musia byť objekty, a nebránia garbage collectoru odstrániť ich.
    // Slabé množstvo
    const weakSet = new WeakSet();
    const obj2 = {};
    weakSet.add(obj2);
    

Existujú aj štruktúry používané v nízkoúrovňových API alebo reprezentujúce špeciálne objekty:

  • ArrayBuffer: Predstavuje univerzálny, pevne dlhý binárny buffer.
  • DataView: Poskytuje nízkoúrovňové rozhranie na čítanie a zápis číselných údajov v ArrayBuffer, umožňujúc kontrolu posunov a poradia bajtov.