JavaScript Constructor Functions

کنسٹرکٹر فنکشن (constructor function) آبجیکٹس کے لیے ایک بلیو پرنٹ (blueprint) کی طرح ہوتا ہے۔ اسے ایک ہی ساخت والے بہت سے آبجیکٹس بنانے کے لیے استعمال کریں۔

یہ کیسے کام کرتا ہے:

آپ کنسٹرکٹر فنکشن کو کال کرنے کے لیے new کی ورڈ کا استعمال کرتے ہیں۔ یہ عمل چار کام کرتا ہے:

مثال کے طور پر کوڈ:

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

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

ان قواعد پر عمل کریں:

this کا کردار:

ایک کنسٹرکٹر کے اندر، this اس مخصوص آبجیکٹ کی طرف اشارہ کرتا ہے جو آپ بنا رہے ہیں۔ مثال کے طور پر، this.name = name پیرامیٹر کی ویلیو کو آبجیکٹ کی پراپرٹی کو تفویض کرتا ہے۔

میتھڈز (methods) کا اضافہ کرنا:

آپ کنسٹرکٹر کے اندر فنکشنز شامل کر سکتے ہیں تاکہ ہر آبجیکٹ انہیں استعمال کر سکے۔

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

میموری کی کارکردگی (Memory efficiency):

اگر آپ براہ راست کنسٹرکٹر میں میتھڈز شامل کرتے ہیں، تو ہر آبجیکٹ کو اپنی ایک الگ کاپی ملتی ہے۔ اس سے زیادہ میموری استعمال ہوتی ہے۔

اس کے بجائے، 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