Junior
Jakie struktury danych istnieją w JavaScript?
sobes.tech AI
Odpowiedź od AI
Najprostsze typy danych: String (łańcuchy), Number (liczby), BigInt (duże liczby całkowite), Boolean (typ logiczny), Undefined (wartość niezdefiniowana), Symbol (symbole), Null (wartość null).
Złożone struktury danych:
- Object (obiekt): Kolekcja par klucz-wartość.
// Prosty obiekt const user = { name: 'Ivan', age: 30 }; - Array (tablica): Uporządkowana kolekcja elementów.
// Tablica liczb const numbers = [1, 2, 3, 4, 5]; - Map (mapa): Kolekcja par klucz-wartość, gdzie klucze mogą być dowolnego typu danych i zachowują kolejność wstawiania.
// Mapa z różnymi typami kluczy const map = new Map(); map.set('name', 'Peter'); map.set(1, 'liczba'); - Set (zbiór): Kolekcja unikalnych wartości dowolnego typu danych.
// Zbiór unikalnych liczb const set = new Set([1, 2, 2, 3, 4, 4]); // Będzie zawierać [1, 2, 3, 4] - Typed Arrays (tablice typowane): Tablice o stałej długości, elementy których mają określony typ numeryczny (np.
Int8Array,Uint8Array,Float32Array).// Tablica bajtów typu `Uint8Array` const byteArray = new Uint8Array([10, 20, 30]); - WeakMap (słaba mapa): Podobna do
Map, ale klucze muszą być obiektami, i nie zapobiegają one usuwaniu obiektów przez garbage collector.// Słaba mapa const weakMap = new WeakMap(); const obj1 = {}; weakMap.set(obj1, 'dane 1'); - WeakSet (słaby zbiór): Podobny do
Set, ale elementy muszą być obiektami, i nie zapobiegają one usuwaniu obiektów przez garbage collector.// Słaby zbiór const weakSet = new WeakSet(); const obj2 = {}; weakSet.add(obj2);
Istnieją również struktury używane w API niskiego poziomu lub reprezentujące specjalne obiekty:
ArrayBuffer: Reprezentuje uniwersalny, o stałej długości, bufor binarny.DataView: Zapewnia niskopoziomowy interfejs do odczytu i zapisu danych liczbowych wArrayBuffer, umożliwiając kontrolę przesunięć i kolejności bajtów.