توابع سازنده در JavaScript

یک تابع سازنده (constructor function) در واقع الگویی برای اشیاء است. از آن برای ایجاد اشیاء متعدد با ساختاری یکسان استفاده کنید.

نحوه عملکرد:

شما از کلمه کلیدی new برای فراخوانی یک تابع سازنده استفاده می‌کنید. این فرآیند چهار کار انجام می‌دهد:

کد نمونه:

function Employee(name, salary) {
    this.name = name;
    this.salary = salary;
}

const emp1 = new Employee("Saravanan", 50000);

قوانین باید رعایت شوند:

نقش this:

در داخل یک سازنده، this به شیء خاصی که در حال ساخت آن هستید اشاره دارد. برای مثال، this.name = name مقدار پارامتر را به ویژگیِ شیء اختصاص می‌دهد.

افزودن متدها:

می‌توانید توابعی را داخل یک سازنده اضافه کنید تا هر شیء بتواند از آن‌ها استفاده کند.

function Employee(name, salary) {
    this.name = name;
    this.salary = salary;
    this.displayInfo = function() {
        console.log(this.name + " earns " + this.salary);
    };
}

بهره‌وری حافظه:

اگر متدها را مستقیماً به سازنده اضافه کنید، هر شیء یک کپی مخصوص به خود دریافت می‌کند. این کار حافظه بیشتری مصرف می‌کند.

در عوض، از prototype استفاده کنید. افزودن یک متد به prototype باعث می‌شود یک کپی واحد بین تمام اشیاء به اشتراک گذاشته شود.

Employee.prototype.greet = function() {
    console.log("Hello " + this.name);
};

خلاصه:

Source: https://www.w3schools.com/js/js_object_constructors.asp Source: https://www.geeksforgeeks.org/javascript/javascript-function-constructor/ Source: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function

Post link: https://dev.to/dev_saravanan_journey/javascript-constructor-functions-k6k