مرکزی مواد پر جائیں
ماڈیول 3 · سبق 2 از 4کورس میں 10/32~10 min
ماڈیول اسباق (2/4)

آبجیکٹ: کلیدی قدر کا نقشہ

JS میں ایک آبجیکٹ کلید → قدر جوڑوں کا ایک غیر ترتیب شدہ مجموعہ ہے۔ کلیدیں تاریں ہیں (یا Symbol)، قدریں کچھ بھی ہیں: اعداد، تار، صفیں، دیگر اشیاء، افعال۔ یہ میں سب سے زیادہ استعمال ہونے والا ڈیٹا ڈھانچہ ہے۔ زبان: آپ کے ڈومین میں ہر "ریکارڈ" عام طور پر ایک آبجیکٹ ہوگا۔

JS
const utente = {
  nome: 'Anna',
  eta: 28,
  attivo: true,
  ruoli: ['admin', 'editor'],
};

پڑھنے کی خصوصیات: ڈاٹ بمقابلہ بریکٹ

دو مساوی اشارے ہیں:

JS
utente.nome; // 'Anna'    (dot — the normal form)
utente['nome']; // 'Anna'    (bracket — equivalent)

// Brackets are MANDATORY when:
// 1) the key is not a valid identifier
const tag = { 'codice-fiscale': 'ABC123' };
tag['codice-fiscale']; // OK
// tag.codice-fiscale;      // syntax error

// 2) the key is computed (variable/expression)
const campo = 'eta';
utente[campo]; // 28

ایک گمشدہ پراپرٹی undefined واپس کرتی ہے، بغیر کسی خرابی کے:

JS
utente.telefono; // undefined

شامل کرنا، ترمیم کرنا، ہٹانا

JS
const u = { nome: 'Anna' };
u.eta = 28; // adds
u.nome = 'Anna B.'; // modifies
delete u.eta; // removes the property

delete ایک کلیدی لفظ ہے۔ یہ ایک نایاب استعمال کیس بن جائے گا: زیادہ تر جب آپ اس کلید کے بغیر ایک نئی آبجیکٹ تیار کرنا چاہیں گے (ہم اسے دیکھیں گے۔ پھیلاؤ کے ساتھ)۔

شارٹ ہینڈ: متغیر کی طرح نام کی چابیاں

جب کلیدی نام متغیر نام سے میل کھاتا ہے، تو آپ نقل کو چھوڑ سکتے ہیں:

JS
const nome = 'Anna';
const eta = 28;

const u1 = { nome: nome, eta: eta }; // explicit form
const u2 = { nome, eta }; // shorthand, equivalent

جائیداد کی موجودگی کی جانچ کرنا

ترجیح کے لحاظ سے تین اختیارات:

JS
'nome' in utente; // true   ← in operator
utente.nome !== undefined; // true   ← works almost always
Object.hasOwn(utente, 'nome'); // true   ← modern, safe

اسے آزمائیں

ورزش#js.m3.l2.e1
کوششیں: 0لوڈ ہو رہا ہے…

آبجیکٹ صارف = { نام: 'سارہ'، عمر: 22 } بنائیں، پھر 'ایکٹو' پراپرٹی سیٹ کو سچ میں شامل کریں اور آبجیکٹ کو آخری اظہار کے طور پر واپس کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

آپ ڈاٹ اشارے کے ساتھ حقیقت کے بعد خصوصیات شامل کرسکتے ہیں۔

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش کا جائزہ لیں۔

ورزش#js.m3.l2.e2
کوششیں: 0لوڈ ہو رہا ہے…

`پروڈکٹ = { کوڈ: 'A1'، قیمت: 9.9 }` اور سٹرنگ `key = 'price'` کو دیکھتے ہوئے، بریکٹ اشارے کا استعمال کرتے ہوئے قیمت واپس کریں (آخری اظہار کا اندازہ 9.9 پر ہونا چاہیے)۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

بریکٹ کے ساتھ آپ ایک متغیر کو کلید کے طور پر پاس کر سکتے ہیں۔

3 کوششوں کے بعد حل دستیاب ہے۔