JavaScript

Java Script Object Methods
دوال الكائنات في لغة جافا سكريبت

ستتعلم في هذا الدرس دوال الكائنات في لغة جافا سكريبت Java Script Object Methods مثل الدوال الخاصة بأنشاء خصائص بداخل الكائن Create Object Property  والدوال التي تقوم بالتعديل وحذف الخصائص من الكائنات Delete & Update Object Property

التاريخ

06 نوفمبر 2021

الدروس

146

المستوى

العامة

اللغة

انجليزي

المشاهدات

1474

المواضيع

24
الشروحات chevron_left Java Script Object Methods chevron_left JavaScript

Java Script Object Methods
الدوال الخاصة بالكائنات في لغة جافا سكريبت

</> Ways to create objects
طرق متعددة لأنشاء الكائنات في لغة الجافا سكريبت

هناك طرق متعددة لكتابة الكائنات Objects في لغة الجافا سكريبت سنتعلم طريقتين في هذا الدرس والبقية مترتبه علي دروس اخري سوف نتطرق اليها لاحقاً.

  • الطريقة الاولي : عن طريق كتابة خصائص الكائنات Objects Properites مباشرة.
  • الطريقة الثانية : عن طريق ()Keyword new object وهي عملية object initialization داخل متغير variable ثم الحاق الخصائص في سطور جديدة.
  • الطريقة الثالثة : عن طريق استخدام دالة ( )create وهي تقوم بأنشاء نسخة من الكائن ونقوم بتخزينه بداخل كائن أخر وبعد ذلك يمكننا أجراء عمليات مختلفة عليه مثل ( إضافة خاصية , حذف خاصية , تغيير قيمة خاصية

عن طريق كتابة خصائص الكائنات

var plane= {type:"MS", model:2001, color:"white"};
document.write("The Plane Color is " + plane.color);
document.write("The Plane model is " + plane.model);

باستخدام ( )new object

var plane=new Object();
plane.type = "MS";
plane.model= 2001;
plane.color= "white";

باستخدام دالة ( )create

var newPlane = Object.create(plane);
newPlane.model=1995
document.write("<br>"+"the new plane model is   " + newPlane.model);

</> Adding a new property to an object
اضافة خصائص جديدة بداخل الكائن في لغة جافا سكريبت

علي عكس لغات البرمجة الأخري مثل (++C و java ) ففي لغة الجافا سكريبت يمكنك اضافة خاصية property جديدة لل object بعد انشائه 

وذلك باستخدام عدة طرق مختلفة وهم : - 

  1. الطريقة الأولي : باستخدام علامة النقطة " . " , Dot notation ثم اسم الخاصية التي نريد اضافتها مباشرة الي الكائن 
  2. الطريقة الثانية : باستخدام الأقواس المربعة "[ ]" bracket notation عن طريق وضع اسم الخاصية بداخل اقواس مربعة ويسبق هذه الأقواس اسم الكائن object 
  3. الطريقة الثالثة : باستخدام دالة تسمي "() Object.assign" وهي تأخذ قيمتين الأولي تكون اسم الكائن الذي نريد إضافة الخاصية اليه والثانية تكون اسم الخاصية التي نريد اضافتها الي هذا الكائن 
  4. الطريقة الرابعة : باستخدام عامل الانتشار spread operator وهي عن طريق وضع الخاصية التي نريد اضافتها بداخل اقواس مجعدة " { } " ويجب ان يسبق اسم الخاصية ثلاثة نقاط " . . . " ثم نقوم بتخزينها بداخل الكائن الذي نريد باستخدام علامة يساوي " = " 

استخدام Using dot notation

var plane = {type:"MS", model:2001, color:"white"};
plane.company= "Saudia Air";
document.write("The Plane Company is " + plane.company);

استخدام Using bracket notation

var plane = {type:"MS", model:2001, color:"white"};
plane['company']= "Saudia Air";
document.write("The Plane Company is " + plane['company']);

استخدام Using Object assign function

var plane = {type:"MS", model:2001, color:"white"};
var details= { company:"Saudia Air"};
Object.assign(plane,details);
document.write("The Plane Company is " + plane.company);

استخدام Using Spread operator

var plane = {type:"MS", model:2001, color:"white"};
var details= { company:"Saudia Air"};
var newplane = {...plane, ...details};
document.write("The Plane Company is " + newplane.company);

</> Deleting a property of an object
حذف خاصية من الكائن في الجافاسكريبت

يمكنك حذف احدي خواص ال object باستخدام عدة طرق مختلفة  وسنتعرف علي بعضهم الأن وفي الدروس المتقدمة سوف نتعرف علي بقية هذه الطرق 

  1. الطريقة الأولي : باستخدام دالة delete عن طريق كتابة كلمة "delete" ثم اسم الكائن ثم علامة النقطة "." ثم اسم الخاصية التي نريد حذفها 
  2. الطريقة الثانية: باستخدام دالة delete عن طريق كتابة كلمة "delete" ثم اسم الكائن ثم أقواس مربعة " [ ] " تحتوي بداخلها علي المفتاح key الخاص بالخاصية التي نريد حذفها 
  3. الطريقة الثالثة : باستخدام دالة ( )Reflect.deleteProperty عن طريق كتابة الدالة ( )Reflect.deleteProperty وتحتوي بداخلها علي قيمتين القيمة الأولي هي أسم الكائن والقيمة الثانية هي اسم الخاصية التي نريد حذفها ويجب وضع هذه الخاصية بداخل علامة تنصيص  
  4. الطريقة الرابعة عن طريق انشاء كائن جديد وتحديد الخصائص المراد تجاهلها من الكائن القديم ويكون اسم الكائن الجديد مسبوق بثلاثة نقاط "...

باستخدام دالة delete

var plane= {type:"MS", model:2001, color:"white"};
delete plane.model
console.log(plane);

باستخدام دالة delete مع الاقواس المربعة [ ]

var plane = {type:"MS", model:2001, color:"white"};
delete plane[model]
console.log(plane);

باستخدام دالة ( )Reflect.deleteProperty

var plane= {type:"MS", model:2001, color:"white"};
Reflect.deleteProperty(plane, 'color');
console.log(plane);

باستخدام Destructuring

var plane= {
type:"MS", model:2001, color:"white"
}
var { type, color, ...newPlane} = plane

console.log(newPlane)

- لكي تريد نتيجة تنفيذ دالة ( )console.log يجب ان تقوم بعمل inspect 

- عندما تقوم بطباعة object كائن باستخدام دالة ( )console.log فسوف يتم عرض كلمة object ويجب ان تقوم بالضغط عليها حتي يتم اظهار الخصائص الخاصة بهذا ال object 

</> Object length
عدد عناصر الكائن في الجافاسكريبت

يمكننا معرفة عدد عناصر الكائن object عن طريق خطوتين وهما 

- أولا نستخدم الدالة ( )keys والتي تقوم بأرجاع جميع المفاتيح keys الخاصة بالكائن object 

- ثانيا نقوم باستخدام الدالة length لتقوم بأرجاع عدد المفاتيح التي قامت الدالة ( )keys بأرجاعاها فتكون علي الشكل التالي 

var plane= {
  type:"MS", 
  model:2001, 
  color:"white"
}
document.write(Object.keys(plane).length);

</> Update object or Update Object property
تعديل قيم الكائنات أو قيم خصائصها في الجافاسكريبت

نستطيع تغيير القيم الخاصة بالخصائص الموجودة بداخل كائن معين عن طريق اختيار هذه الخاصية ثم تخزين قيمة جديدة بداخلها وسوف تقوم لغة الجافاسكريبت بتبديل القيمة التي قمت بإدخالها بالقيمة الموجودة سابقا ونستطيع تحديد الخاصية التي نريد تغييرها عن طريق كتابة اسم الكائن ثم علامة " . "  ثم اسم الخاصية التي تريد تغييرها كما في المثال التالي 

باستخدام ال Dot notation

var plane= {
  type:"MS", 
  model:2001, 
  color:"white"
}
plane.model=1995;
document.write("The Plane model is " + plane.model);

باستخدام الأقواس المربعة

var plane= {
  type:"MS", 
  model:2001, 
  color:"white"
}
plane['model']=1995;
document.write("The Plane model is " + plane['model']);

عندما تقوم بتغيير قيمة احد خصائص كائن object معين فيجب ان تقوم بتحديد العنصر الذي تريد تغيير قيمته بأستخدام أحدي الطرق التي تعرفنا عليها في الدرس السابق سواء بال Dot notation او Bracket notation وبعد ذلك تعيين القيمة الجديدة.

  • يرجي العلم انه في حالة قمت بتغيير القيمة من داخل كائن مباشرة فسوف يتسبب ذلك في خطأ 

</> Object type of
فحص نوع البيانات بداخل المتغير في الجافاسكريبت

تستخدم الدالة ( )typeof في تحديد نوع العنصر الذي يتم تمريره اليها كما في الامثلة التالية 

تحديد نوع المتغير

var Type="MS";
var model = 2001;
document.write(typeof(Type) + "<br>");
document.write(typeof(model));

تحديد نوع المصفوفة array

var courses = ["HTML", "CSS", "JS"];
document.write(typeof(courses));

تحديد نوع الكائن object

var plane= {
  type:"MS", 
  model:2001, 
  color:"white"
};
document.write(typeof(plane));
تعتبر المصفوفات arrays نوع من انواع الكائنات objects لذلك فأننا عندما نستخدم دالة ( )typeof معها فأنها سوف تقوم بأرجاع القيمة "object" وليست "array"
معلومات تهمك
  • لا تنسى تقييم الدروس لكي نُحدّث المُحتوى باستمرار حتى ينال إعجابك.
  • لا تنسى مشاركة الموقع مع أصدقاءك حتى تعمّ الفائدة وتكون سبب في نفعهم.
مشاركة
0
0
0
0
عدد المشاركات
هل هذه المعلومات نالت إعجابك ؟
0
0
عدد التقييمات

لديك استفسار ؟

يسعدنا كثيرا مساعدتك في استيعاب افضل للأمور, فلا تترد مطلقا في الاتصال بنا في حال كانت لديك اية اسئله او استفسارات.