إنشاء كائنك الخاص
يعتبر استخدام الكائنات مفيداً جداً لتنظيم معلوماتك .
كائنات الجافاسكربت JavaScript
وجدنا في دروس سابقة بأن الجافاسكربت تحتوي على كائنات معرّفة مسبقاً مثل النصوص و التاريخ و المصفوفات و المزيد . بالإضافة الى الكائنات المعرّفة مسبقاً . و بذلك يمكنك أيضاً إنشاء كائنات خاصة بك .
الكائن هو نوع خاص من البيانات حيث يحتوي على خصائص وطرق .
لنتخيل المثال التالي : لدينا شخص معين ويعتبر كائن , هذا الكائن لديه خصائص معينة . يتم تعيين قيم معينة لتلك الخصائص مثل الاسم و الطول و العرض و العمر و لون العيون و غيرها . جميع الأشخاص لديهم خصائص الا أن هذه الخصائص تختلف من شخص لآخر . تحتوي أيضاً الخصائص على طرق . تلك الطرق هي الأفعال التي تشكل الكائن . ان طرق الشخص هي الأكل
eat() والنومsleep() و العمل work() و اللعب play() .. إلخ .
الخصائص
ان تركيبة الخصائص التي يمكن أن تستدعي بها خصائص الكائن هي اسم الكائن ثم اسم الخصيصة .
objName.propName
يمكن إضافة خصائص معينة لكائن فقط بإضافة قيمة . وبافتراض أن personObj ( اسم الكائن ) موجود من قبل فيمكن إضافة اسم الكائن نفسه ثم خصيصة مختلفة مثل الاسم الأول ثم الاسم الثاني و العمر و لون العيون كالتالي :
personObj.firstname="سامي"; personObj.lastname="يوسف"; personObj.age=30; personObj.eyecolor="بني"; document.write(personObj.firstname);
ستظهر النتيجة
سامي
الطرق
يحتوي الكائن أيضاً على طرق مختلفة .
يمكنك استدعاء الطريقة من خلال التركيبة التالية :
objName.methodName()
ملاحظة : ان أردت ادراج قيمة معينة للطريقة فيمكن ذلك من خلال وضع القيمة بين القوسين () .
لاستدعاء الطريقة
sleep() للكائن personObj كالتالي :personObj.sleep();
إنشاء الكائن الخاص بك
هناك طرق عديدة لإنشاء كائن جديد :
1. إنشاء كائن جديد مباشر
يمكن إنشاء كائن جديد مباشرةً وإضافة خصائص اليه :
personObj=new Object(); personObj.firstname="سامي"; personObj.lastname="يوسف"; personObj.age=50; personObj.eyecolor="أزرق";
استخدام تركيبة بديلة :
personObj={firstname:"سامي",lastname:"يوسف",age:50,eyecolor:"أزرق"};
يمكن إضافة أيضاً طرق للكائن personObj بسهولة . يضيف الكود التالي طريقة تسمى
eat() الى الكائن personObjj .personObj.eat=eat;
2. إنشاء كائن منتظم
يمكن إنشاء كود وظيفي والذي بدوره ينظم الكائن .
function person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
}
يجب تعيين بداخل الكود الوظيفي أشياء الى this.propertyName . ان سبب استخدام “this” لأنك تريد استخدام أكثر من شخص بنفس الوقت .
عند إنشاء الكائن المنتظم , يمكنك إنشاء أمثلة جديدة للكائن مثل “this” .
var myFather=new person("سامي","يوسف",50,"أزرق");
var myMother=new person("سلمى","الأحمد",48,"أخضر");
يمكنك أيضاً إضافة طرق جديدة للكائن object . كما يمكن فعل ذلك داخل الكود الوظيفي :
function person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
this.newlastname=newlastname;
}
لاحظ بأن الطرق هي عبارة أن وظائف مرفقة مع الكائن . الآن سيتوجب علسنا كتابة الكود
newlastname() :function newlastname(new_lastname)
{
this.lastname=new_lastname;
}
يعرّف الكود الوظيفي
newlastname() كنية الشخص و إرفاقه الى كائن الشخص person .
تعلم لغة الجافاسكربت أي شخص تريد ادارج الكنية اليه وذلك باستخدام “this.” ولذلك يمكنك كتابة الكود الآن
myMother.newlastname("Abbas") .
تعليقات
إرسال تعليق