جاوا اسکرپٹ | اختیاری زنجیر

Jawa Askrp Akhtyary Znjyr



اختیاری سلسلہ بندی جاوا اسکرپٹ کے لیے ایک بالکل نئی خصوصیت ہے جسے ECMA انٹرنیشنل نے متعارف کرایا ہے۔ اس کا استعمال گہرے نیسٹڈ اشیاء کی خصوصیات کو جانچنے کے لیے کیا جاتا ہے بغیر اس پراپرٹی کے بارے میں فکر کیے جو کہ موجود نہیں ہے۔ یہ غلطیوں کے بغیر ان اقدار کو چیک کرنے کا ایک محفوظ طریقہ فراہم کرتا ہے۔ اختیاری چیننگ آپریٹر غلطی کی بجائے ایک غیر متعینہ قدر لوٹاتا ہے، جب حوالہ موجود نہ ہو۔ یہ خصوصیت ایسی چیز نہیں ہے جس کی آپ کو اپنے کوڈ میں ضرور ضرورت ہوگی لیکن اکثر یہ بہت مفید ثابت ہوسکتی ہے۔ اختیاری سلسلہ بندی اس وقت بہترین کام کرے گی جب آپ کو اس بارے میں یقین نہ ہو کہ ڈیٹا اصل میں کیسا نظر آتا ہے جیسے کہ APIs کے ساتھ کام کرتے وقت۔

اختیاری تبدیل کرنے والا آپریٹر اس وقت تک راستے پر چلتا رہے گا جب تک کہ یہ کسی پراپرٹی کی قیمت تک نہ پہنچ جائے یا غلطی کا شکار نہ ہو جائے:

ملازم دو = {
پہلا نام : 'جان' ،
آخری نام : 'کرو' ،
عمر : 3. 4
} ;

تسلی. لاگ ( ملازم. پتہ ? . زپ ) ;







اگر ہم نے اختیاری چیننگ آپریٹر کا استعمال کیے بغیر اسی پراپرٹی ویلیو تک رسائی حاصل کرنے کی کوشش کی ہوتی تو ہمیں ایک غلطی موصول ہوتی:



ملازم دو = {
پہلا نام : 'جان' ،
آخری نام : 'کرو' ،
عمر : 3. 4
} ;

تسلی. لاگ ( ملازم. پتہ . زپ ) ;



طریقہ کالز پر اختیاری زنجیر

اختیاری سلسلہ بندی میتھڈ کالز پر بھی کام کرتی ہے۔ آپ اختیاری زنجیر استعمال کر سکتے ہیں جب آپ کو یقین نہ ہو کہ آیا کسی چیز کے اندر کوئی طریقہ موجود ہے۔ مثال کے طور پر استعمال کا کیس ایک API سے حاصل کردہ ڈیٹا ہے جس میں صارف کے آلے کے لحاظ سے کچھ خصوصیات شامل ہوسکتی ہیں یا نہیں:





ملازم دو = {
پہلا نام : 'جان' ،
آخری نام : 'کرو' ،
عمر : 3. 4
} ;

تسلی. لاگ ( ملازم. طریقہ ? . ( ) ) ;

اختیاری زنجیر کے بغیر:



ملازم دو = {
پہلا نام : 'جان' ،
آخری نام : 'کرو' ،
عمر : 3. 4
} ;

تسلی. لاگ ( ملازم. طریقہ ( ) ) ;

غلطیوں سے بچنے کے لیے اختیاری چیننگ آپریٹر کو ایک ہی بیان میں متعدد بار استعمال کیا جا سکتا ہے۔

Nullish coalescing آپریٹر کے ساتھ اختیاری زنجیر کو جوڑنا

اختیاری زنجیر بھی ?? پراپرٹی یا طریقہ موجود نہ ہونے کی صورت میں آپریٹر کو ڈیفالٹ ویلیو فراہم کرنا:

ملازم دو = {
پہلا نام : 'جان' ،
آخری نام : 'کرو' ،
عمر : 3. 4
} ;

تسلی. لاگ ( ملازم. طریقہ ? . ( ) ؟؟ 'فنکشن موجود نہیں ہے' ) ;

ڈیفالٹ ویلیو کچھ فنکشن کال بھی ہو سکتی ہے۔

اختیاری زنجیر کا کثرت سے استعمال

کوڈ کی پڑھنے کی اہلیت اور خوبصورتی کو بڑھانے کے لیے اختیاری زنجیر متعارف کرائی گئی۔ اسے احتیاط سے استعمال کیا جانا چاہئے کیونکہ اس کے نتیجے میں غلطیوں کو خاموش کیا جاسکتا ہے۔ اختیاری چیننگ آپریٹر کا زیادہ استعمال آپ کے کوڈ میں مسائل کا سبب بن سکتا ہے۔

نتیجہ

اختیاری سلسلہ بندی JavaScript کی ایک حال ہی میں شامل کردہ خصوصیت ہے جس کا استعمال ڈیپ نیسٹڈ JavaScript آبجیکٹ کے اندر موجود خصوصیات اور طریقوں تک رسائی کے لیے کیا جا سکتا ہے بغیر ان طریقوں اور خصوصیات کے وجود کے لیے دستی جانچ پڑتال کرنے کی فکر کیے بغیر۔