Sobes.tech
Junior

JavaScriptda qanday ma'lumotlar tuzilmalari mavjud?

sobes.tech AI

AIdan javob

Eng oddi eng oddi: String (matnlar), Number (raqamlar), BigInt (katta butun raqamlar), Boolean (mantiqiy tur), Undefined (belgilanmagan qiymat), Symbol (ramzlar), Null (bo'sh qiymat).

Murakkab ma'lumot tuzilmalari:

  • Object (obyekt): Kalit-qiymat juftliklari to'plami.
    // Oddiy obyekt
    const user = {
      name: 'Ivan',
      age: 30
    };
    
  • Array (massiv): Elementlarning tartiblangan to'plami.
    // Raqamlar massiv
    const numbers = [1, 2, 3, 4, 5];
    
  • Map (xarita): Kalit-qiymat juftliklari to'plami, kalitlar har qanday ma'lumot turidan bo'lishi mumkin va kiritish tartibini saqlaydi.
    // Turli xil kalit turlariga ega xarita
    const map = new Map();
    map.set('name', 'Peter');
    map.set(1, 'raqam');
    
  • Set (to'plam): Har qanday ma'lumot turidan unikal qiymatlar to'plami.
    // Unikal raqamlar to'plami
    const set = new Set([1, 2, 2, 3, 4, 4]); // [1, 2, 3, 4] bo'ladi
    
  • Typed Arrays (tipli massivlar): Belgilangan uzunlikdagi massivlar, ularning elementlari aniq raqamli turga ega (masalan, Int8Array, Uint8Array, Float32Array).
    // Tipli bayt massiv
    const byteArray = new Uint8Array([10, 20, 30]);
    
  • WeakMap (zaif xarita): Map ga o'xshash, lekin uning kalitlari obyektlar bo'lishi kerak va ular garbage collector tomonidan olib tashlanmaydi.
    // Zaif xarita
    const weakMap = new WeakMap();
    const obj1 = {};
    weakMap.set(obj1, 'ma`lumot 1');
    
  • WeakSet (zaif to'plam): Set ga o'xshash, lekin uning elementlari obyektlar bo'lishi kerak va ular garbage collector tomonidan olib tashlanmaydi.
    // Zaif to'plam
    const weakSet = new WeakSet();
    const obj2 = {};
    weakSet.add(obj2);
    

Shuningdek, past darajadagi API-larda ishlatiladigan yoki maxsus obyektlarni ifodalovchi tuzilmalar ham mavjud:

  • ArrayBuffer: Universal, uzunligi belgilangan ikkilik buffer.
  • DataView: ArrayBuffer ichidagi raqamli ma'lumotlarni o'qish va yozish uchun past darajadagi interfeys, bu offsetlar va bayt tartibini nazorat qilish imkonini beradi.