Junior
Ի՞նչ տվյալների կառուցվածքներ կան JavaScript-ում։
sobes.tech AI
Պատասխան AI-ից
Տվյալների պարզ տեսակներ՝ String (տողեր), Number (թիվեր), BigInt (մեծ ամբողջ թվեր), Boolean (լոգիկ տեսակ), Undefined (անորոշ արժեք), Symbol (симվոլներ), Null (բաց արժեք):
Ավելին՝ բարդ տվյալների կառուցվածքներ՝
- Object (օբյեկտ): բանալի-արժեք զույգերի հավաքածու:
// Պարզ օբյեկտ const user = { name: 'Իվան', age: 30 }; - Array (մասիվ): տարրերի դասավորված հավաքածու:
// Թվերի մասիվ const numbers = [1, 2, 3, 4, 5]; - Map (քարտա): բանալի-արժեք զույգերի հավաքածու, որտեղ բանալին կարող է լինել ցանկացած տվյալների տիպ, և պահպանում է ներմուծման կարգը:
// Տարբեր տիպերի բանալիներով քարտա const map = new Map(); map.set('name', 'Պետրոս'); map.set(1, 'թիվ'); - Set (հավաքածու): եզակի արժեքների հավաքածու ցանկացած տիպի:
// Եզակի թվերի հավաքածու const set = new Set([1, 2, 2, 3, 4, 4]); // Կպահպանի [1, 2, 3, 4] - Typed Arrays (տիպավորված զանգվածներ): սահմանված երկարությամբ զանգվածներ, որոնց տարրերը ունեն որոշակի թվային տիպ (օրինակ,
Int8Array,Uint8Array,Float32Array):// Տիպավորված բայթների զանգված const byteArray = new Uint8Array([10, 20, 30]); - WeakMap (թույլ քարտա): նման է
Map, բայց նրա բանալիները պետք է լինեն օբյեկտներ, և դրանք չեն խանգարում հավաքողին հեռացնել կապված օբյեկտները:// Թույլ քարտա const weakMap = new WeakMap(); const obj1 = {}; weakMap.set(obj1, 'տվյալներ 1'); - WeakSet (թույլ հավաքածու): նման է
Set, բայց նրա տարրերը պետք է լինեն օբյեկտներ, և դրանք չեն խանգարում հավաքողին հեռացնել դրանք:// Թույլ հավաքածու const weakSet = new WeakSet(); const obj2 = {}; weakSet.add(obj2);
Նաեւ կան կառուցվածքներ, որոնք օգտագործվում են ցածր մակարդակի API-ներում կամ ներկայացնում են հատուկ օբյեկտներ:
ArrayBuffer: ներկայացնում է համընդհանուր, որոշակի երկարության բինարային բուֆեր:DataView: տրամադրում է ցածր մակարդակի ինտերֆեյսArrayBuffer-ի համար թվային տվյալների ընթերցման և գրելու համար, թույլ տալով վերահսկել շեղումները և բայթերի կարգը։