021-28423015

نمونه اولیه شی JavaScript

تمام اشیاء جاوا اسکریپت خواص و روش ها از یک نمونه اولیه به ارث می برند.

در فصل قبل ما یاد گرفتیم که چگونه از یک سازنده(constructor) شی استفاده کنیم:

سازنده شی
function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
}
var myFather = new Person("John", "Doe", 50, "blue");
var myMother = new Person("Sally", "Rally", 48, "green");
مشاهده مثال

ما همچنین یاد گرفتیم که شما نمیتوانید یک ویژگی جدید را به یک سازنده موجود اضافه کنید:

ویژگی جدید
 Person.nationality = "English"; 
مشاهده مثال

برای افزودن یک ویژگی جدید به یک سازنده، باید آن را به تابع سازنده اضافه کنید:

تابع سازنده
function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
    this.nationality = "English";
}
مشاهده مثال

توزیع نمونه اولیه

تمام اشیاء جاوا اسکریپت خواص و روش ها از یک نمونه اولیه به ارث می برند.
اشیای تاریخ از Date.prototype به ارث می برند. اشیاء آرایه از Array.prototype به ارث می برند. اشیای person از Person.prototype به ارث می برند.
Object.prototype در بالای زنجیره توزیع نمونه اولیه است.
اشیای تاریخ، اشیاء آرایه و اشیاء Person از Object.prototype به ارث می برند.

اضافه کردن خواص و روش ها به اشیاء

گاهی اوقات شما می خواهید خواص جدید (یا روش ها) را به تمام اشیاء موجود در یک نوع داده اضافه کنید.

گاهی اوقات می خواهید خواص جدید (یا روش ها) را به یک سازنده شی اضافه کنید.

استفاده از ویژگی prototype

خصوصیات prototype به شما امکان می دهد که خواص جدید را به سازنده های شیء اضافه کنید:

ویژگی prototype
function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
}
Person.prototype.nationality = "English";
مشاهده مثال

ویژگی نمونه اولیه ی جاوا اسکریپت نیز به شما امکان اضافه کردن روش های جدید به سازندگان اشیا را می دهد:

اضافه کردن روش جدید
function Person(first, last, age, eyecolor) {
    this.firstName = first;
    this.lastName = last;
    this.age = age;
    this.eyeColor = eyecolor;
}
Person.prototype.name = function() {
    return this.firstName + " " + this.lastName;
};
مشاهده مثال

توجه: فقط نمونه های اولیه خود را تغییر دهید. هرگز پیش نمونه های اشیاء جاوا اسکریپت استاندارد را اصلاح نکنید.

نظر شما

لطفا نام و نام خانوادگی خود را وارد کنید
لطفا ایمیل خود را وارد کنید لطفا ایمیل صحیح وارد کنید.
لطفا متن نظر خود را وارد کنید
>

یادگیری JavaScript

مقالات و دروس

عضویت در خبرنامه شرکت نرم افزاری وب مهراز

برای اطلاع از بسته ها ، تخفیف های استثنایی و تازه های ما به خبرنامه وب مهراز بپیوندید.

لطفا شماره همراه صحیح وارد کنید.
لطفا ایمیل صحیح وارد کنید.

مقالات مرتبط