"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > فهم النماذج الأولية في جافا سكريبت: العمود الفقري للميراث

فهم النماذج الأولية في جافا سكريبت: العمود الفقري للميراث

تم النشر بتاريخ 2024-11-05
تصفح:179

Understanding Prototypes in JavaScript: The Backbone of Inheritance

JavaScript هي لغة قوية تستخدم الوراثة النموذجية، والتي يمكن أن تكون مربكة بعض الشيء لأولئك القادمين من اللغات القائمة على الفصل. في هذا المنشور، سنستكشف كيفية عمل النماذج الأولية في JavaScript، ودورها في الميراث، وكيف يمكنك استخدامها بفعالية.

ما هي النماذج الأولية؟

في JavaScript، كل كائن لديه خاصية تسمى النموذج الأولي. تسمح هذه الخاصية للكائنات بوراثة الخصائص والأساليب من كائنات أخرى، مما يتيح شكلاً من أشكال الوراثة يعد أمرًا أساسيًا لمرونة JavaScript.

سلسلة النموذج الأولي

عندما تحاول الوصول إلى خاصية على كائن ما وهي غير موجودة على هذا الكائن نفسه، تبحث JavaScript في سلسلة النموذج الأولي للعثور عليها. وتستمر هذه السلسلة حتى تصل إلى نهايتها، وهي فارغة.

إنشاء كائنات بدون فئات

يسمح لك JavaScript بإنشاء كائنات باستخدام وظائف المنشئ. وإليك كيفية العمل:

// Constructor function
function Person(name, age) {
  this.name = name;
  this.age = age;
}

// Adding methods via prototype
Person.prototype.greet = function() {
  console.log(`Hello, my name is ${this.name}`);
};

// Creating an instance
const person1 = new Person('Srishti', 25);
person1.greet(); // Output: Hello, my name is Srishti

في هذا المثال، تعد طريقة الترحيب جزءًا من النموذج الأولي للشخص، مما يسمح لجميع مثيلات الشخص بالوصول إليها دون تعريفها في كل مثيل.

فصول ES6: نهج حديث

مع تقديم ES6، تدعم JavaScript الآن الفئات، مما يسهل إنشاء الكائنات وإدارة الميراث. إليك مثال مشابه باستخدام بناء جملة الفئة:

// Class declaration
class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  greet() {
    console.log(`Hello, my name is ${this.name}`);
  }
}

// Creating an instance
const person1 = new Person('Srishti', 25);
person1.greet(); // Output: Hello, my name is Srishti

الاختلافات الرئيسية بين وظائف المنشئ والفئات

بناء الجملة: توفر الفئات طريقة أكثر وضوحًا وبديهية لتعريف الكائنات مقارنة بوظائف المنشئ.

الهيكل: في حين أن وظائف المنشئ تتطلب إرفاقًا يدويًا للطرق عبر النموذج الأولي، فإن الفئات تدعم الطرق بطبيعتها كجزء من تعريفها.

خاتمة

يعد فهم النماذج الأولية أمرًا بالغ الأهمية لإتقان جافا سكريبت، خاصة عند العمل مع الأنماط الموروثة والكائنات التوجه. سواء اخترت استخدام وظائف البناء التقليدية أو بناء جملة الفئة الحديثة، فإن استيعاب مفهوم النماذج الأولية سيعزز بشكل كبير قدراتك على البرمجة.

هذا كل شيء لهذا اليوم، شكرًا إذا كنت تقرأ حتى هنا! آمل أن تستمتع بقراءته. لا تنسى الضغط على ❤️.

لا تتردد في المشاركة في قسم التعليقات إذا كان لديك أي أسئلة أو ترغب في المساهمة بمزيد من الأفكار في هذه المدونة. تعتبر تعليقاتك ومناقشاتك مساهمات قيمة تعزز معرفتنا المشتركة.

بيان الافراج تم إعادة نشر هذه المقالة على: https://dev.to/srishtikprasad/understanding-prototypes-in-javascript-the-backbone-of-inheritance-2ccl?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] للحذف هو - هي
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3