Have an account? Sign in
Login  Register  Facebook
This Page is Under Construction! - If You Want To Help Please Send your CV - Advanced Web Core (BETA)
[Edit] الكائنات الموجودة مسبقا
في البداية سنتحدث عن الكائنات الموجودة أصلا في الجافا سكريبت ,حيث أن الجافا سكريبت تعتمد في عملها على مجموعة من الكائنات الموجوده بداخلها . في الدروس السابقة إستخدمنا كثيرا هذه الدالة document.write() إذا نظرت لهذه الدالة ستجد أنها تتكون من document ثم نقطة "."ثم write() . و الآن حان الوقت لتعلم أن document عبارة عن كائن Object هذا الكائن يحتوى داخله على مجموعة من المتغيرات و الدوال الخاصة بمحتوى صفحة الويب نفسها و منها الدالة write() التي استخدمناها كثيرا ,و هناك مفهومين خاصين بالكائنات لابد من ذكرهم الآن:
  • الطرق (methods):و هو المسمى الذي يطلق على الدالة الموجودة داخل كائن أي أن الmethod (الطريقة) و الـ function شيء واحد ,كل الفرق أن الmethod تكون موجودة داخل كائن مثل دالة write() .
  • الخصائص (Properties):وهو الإسم الذي نطلقه على المتغيرات الموجوده داخل الكائن.و أيضا المتغيرات و الخصائص شيء واحد و الفرق أن الخصائص موجودة داخل كائن .
لكي تصل إلى دالة داخل كائن أو خاصية داخل كائن يجب أن تستخدم النقطة "." فتكتب أولا إسم الكائن ثم بعد النقطه
  • تكتب إسم الدالة بعده قوسين () مثل document.write() و التي تطبع نص في الصفحه.
  • أو الخاصية بدون أن تتبعها بقوسين مثل document.fileCreatedDate و هي الخاصية التي ترجع لك تاريخ إنشاء صفحة الـ html المحمله حاليا .
يمكن أن يكون كائن ما خاصية في كائن آخر أي أنه يمكن لكائن أن يحتوى كائن آخر داخله. و الآن انظر للمخطط الموجود بالأسفل و الذي يوضح الكائنات التي تتكون منها الجافا سكريبت مقسمة حسب نوعها ووظيفتها أنظر للشكل : الشكل يوضح المخطط الهرمي لللكائنات الموجودة أصلا في الجافا سكريبت و كل مستطيل في الشكل يمثل كائن كما ترى, تتفرع من بعض الكائنات كائنات أخرى ,و كما ترى أن هناك تقسيمين أساسين: Language :و يحتوي على كائنات خاصة باللغة نفسها وليست متعلقة بالمتصفح و محتويات الصفحة. و سنشرح اثنين من هذه الكائنات كمثال في هذا الفصل وهما math و date لكي يتضح لك من خلالهم بشكل أكبر ما هو الكائن عمليا وكيفية التعامل معاهم أما البقية فسيأتي دورهم في الفصول القادمه. navigator :و يحتوى على الكائنات الخاصة بالمتصفح و محتوياته . و أكثر ما يهمنا فيه هو الكائن document الذي يخص صفحة الويب نفسها وما تحتويه من النصوص و الصور و الحقول (forms) و الروابط و غيرها و سندرسه بالتفصيل في فصل خاص به فيما يسمى بالـ Dom . و الكائن window هو الذي يحتوى كل المتغيرات و الدوال التي تقوم بتعريفها مباشرة و يحتوى في داخله أيضا كل الكائنات الأخرى بمعنى : إن قمت بتعريف متغير هكذا
var myname="molhm"
فإنه يمكن إستدعاءه هكذا
window. myname
أو قمت بتعريف دالة هكذا
function myfunc(){
alert("hay");
}
فإنه يمكن منادتها هكذا
window.myfunc()
و كذلك دالة alert التي قمنا بإستخدامها في السابق يمكن إستدعائها بهذه الطريقة
window.alert()
و لكن للأختصار و للتسهيل يكفي إستخدام إسم المتغير أو إسم الدالة عندما تكون موجودة مباشرة في الكائن window . فيكفي أن نكتب إسم المتغير أو إسم الدالة بدون أن يسبقه window. . أما لكي تصل لمتغير داخل كائن و الكائن هذا داخل كائن أكبر فيكون الأمر هكذا و لنفترض أننا نريد أن نصل إلى خاصية (أي متغير )داخل الكائن form حسب المخطط بالأعلى فإنه يمكننا ذلك بهذه الطريقة .
document.forms.إسم الخاصية
و ستتضح الأمور أكثر بعد أن ندرس بعض الأمثلة على الكائنات
November 28, 2011