تتعامل كائنات JavaScript مع خصائص متعددة تمثل قيم أزواج المفاتيح. يتم استخدام هذه الخصائص لتحديد صفات وخصائص كائن محدد في JavaScript. عندما يتم إنشاء الكائنات ، يمكن إضافة خصائصها ذات الصلة وحذفها وتعديلها ديناميكيًا. وبشكل أكثر تحديدًا ، هناك طرق متعددة لجافا سكريبت متاحة لإضافة خصائص إلى كائن.
سيوضح هذا المنشور الطرق المتعددة لإضافة خاصية إلى كائن في JavaScript.
كيفية إضافة / إدراج خاصية إلى كائن في JavaScript؟
الآن ، سنغطي الطرق التالية لإضافة خصائص إلى كائن:
- الطريقة الأولى: إضافة خاصية باستخدام تدوين النقطة (.)
- الطريقة 2: إضافة خاصية باستخدام أسلوب Object.assign ()
- الطريقة الثالثة: إضافة خاصية باستخدام أسلوب Object.defineProperty ()
الطريقة الأولى: إضافة خاصية إلى كائن باستخدام تدوين النقطة (.)
تدوين النقطة هو طريقة للوصول إلى خاصية الكائن. عند الكتابة بتدوين نقطي ، يجب عليك أولاً كتابة اسم الكائن ، ثم نقطة (.) ، ثم إدخال اسم الخاصية.
مثال
أولاً ، قم بالإعلان عن كائن بمساعدة ' يترك 'الكلمة الأساسية وتعيين الخصائص إلى الكائن المحدد داخل الكتلة:
اسمحوا obj = {
اسم : 'ضابط' و
عمر : 14 و
} ؛
استخدم ال ' console.log () 'الطريقة وتمرير الوسيطة' الهدف 'للعرض على وحدة التحكم:
وحدة التحكم. سجل ( الهدف ) ؛الآن ، أضف الخاصية بمساعدة التدوين النقطي:
الهدف. تعليم = 'مهندس برمجيات' ؛
عرض الإخراج على وحدة التحكم:
وحدة التحكم. سجل ( الهدف ) ؛انتاج |
الطريقة 2: إضافة خاصية إلى كائن باستخدام أسلوب Object.assign ()
يمكننا أيضًا استخدام ' تعيين() 'طريقة مضمنة في JavaScript لإضافة الخصائص في كائن. ال ' تعيين الكائن () 'هي طريقة ثابتة لجافا سكريبت تُستخدم لنسخ جميع الميزات والخصائص القابلة للعد من كائن مصدر واحد أو أكثر لاستهداف الكائن.
بناء الجملة
لاستخدام طريقة object.assign () ، تحقق من الصيغة المحددة:
هدف . تعيين ( هدف و مصدر ) ؛في النحو أعلاه:
- ' هدف 'الكائن الذي سيتم نسخ قيم الخاصية فيه.
- ' مصدر 'يشير إلى الكائن حيث يجب نسخ قيم الخصائص المعنية.
مثال
في هذا المثال ، أولاً ، قم بتعريف متغير وقم بتعيين الخصائص. ثم قم بتعريف متغير آخر باتباع نفس الإجراء:
دع الموظف = { اسم : 'ديانا' و عمر : 23 } ؛دع المعلومات = { جنس : 'أنثى' و جنسية : 'كندي' } ؛
استخدم ال ' تعيين الكائن () 'وتمرير الوسيطات ، حيث يكون المعامل الأول هو الكائن الهدف والمعامل الثاني هو الكائن المصدر. ستنسخ هذه الطريقة جميع قيم المصدر في القيمة المستهدفة:
هدف . تعيين ( موظف و معلومة ) ؛ثم ، استدعي ' console.log () 'لعرض النتيجة على وحدة التحكم:
وحدة التحكم. سجل ( موظف ) ؛وحدة التحكم. سجل ( معلومة ) ؛
انتاج |
الطريقة الثالثة: إضافة خاصية إلى كائن باستخدام أسلوب Object.defineProperty ()
ال ' Object.defineProperty () 'هي طريقة جافا سكريبت ثابتة تستخدم لتعريف الخاصية الأحدث والجديدة مباشرة إلى كائن أو تغيير الخاصية الحالية لكائن وإعادة الكائن.
بناء الجملة
لاستخدام ال ' Object.defineProperty () '، اتبع بناء الجملة المحدد:
هدف . تعريف الملكية ( الهدف و الملكية الجديدة و إعدادات ) ؛هنا:
- ' الهدف 'يشير إلى الكائن.
- ' الملكية الجديدة 'يحدد الخاصية التي ستتم إضافتها.
- ' إعدادات 'يحدد القيمة التي يمكن تغييرها وتعديلها.
مثال
أعلن عن كائن بمساعدة ' يترك 'الكلمة الرئيسية:
اسمحوا obj = { } ؛استخدم ' Object.defineProperty () 'ومرر الوسيطات ، وحدد قيمة الخاصية القابلة للكتابة على أنها true. ومن ثم ، يمكن تغيير خاصية معرف الكائن الكائن الآن:
هدف . تعريف الملكية ( الهدف و 'بطاقة تعريف' و {قيمة : 137 و
قابل للكتابة : حقيقي
} ) ؛
أضف عقارًا بمساعدة ' obj.id 'وتعيين القيمة:
الهدف. بطاقة تعريف = 214 ؛وفقًا للوسيطات التي تم تمريرها ، ستعرض وحدة التحكم قيمة الخاصية التي تم تغييرها:
وحدة التحكم. سجل ( 'معرف الكائن:' و الهدف. بطاقة تعريف ) ؛قم بتعيين قيمة الخاصية القابلة للكتابة على أنها خطأ. نتيجة لذلك ، لا يمكن تغيير خاصية الاسم في كائن الكائن الآن:
هدف . تعريف الملكية ( الهدف و 'اسم' و {قيمة : 'ضابط' و
قابل للكتابة : خطأ شنيع } ) ؛
أضف عقارًا بمساعدة ' obj.name 'وتعيين القيمة:
الهدف. اسم = 'Hafsa Javed' ؛وفقًا للوسيطات التي تم تمريرها ، لن تعرض وحدة التحكم قيمة الخاصية الجديدة التي تم تمريرها (حفصة جافيد) ولكن القيمة الأقدم (حفصة):
وحدة التحكم. سجل ( 'اسم الكائن:' و الهدف. اسم ) ؛هذا كل ما يتعلق بإضافة الخاصية إلى كائن في جافا سكريبت.
خاتمة
لإضافة خاصية إلى كائن في JavaScript ، يمكن استخدام طرق متعددة. يمكن للمستخدمين إضافة الخاصية إلى كائن من خلال استخدام ' تدوين نقطي (.) '،' تعيين الكائن () 'أو' Object.defineProperty () ' طريقة. ذكر هذا المنشور الطرق المتعددة لإضافة الخاصية إلى كائن في JavaScript.