𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 𝗖𝗼𝗻𝘀𝘁𝗿𝘂𝗰𝘁𝗼𝗿 𝗙𝘂𝗻𝗰𝘁𝗶𝗼𝗻𝘀
ਇੱਕੋ ਜਿਹੇ ਢਾਂਚੇ ਵਾਲੇ ਕਈ objects ਬਣਾਉਣ ਲਈ constructor functions ਦੀ ਵਰਤੋਂ ਕਰੋ।
ਇੱਕ constructor function ਇੱਕ blueprint ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। ਤੁਸੀਂ ਇਸ blueprint ਤੋਂ objects ਬਣਾਉਣ ਲਈ new keyword ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ। ਤੁਹਾਨੂੰ constructor ਦੇ ਨਾਮ ਵੱਡੇ ਅੱਖਰ (capital letter) ਨਾਲ ਸ਼ੁਰੂ ਕਰਨੇ ਚਾਹੀਦੇ ਹਨ।
ਇਹ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ:
ਜਦੋਂ ਤੁਸੀਂ new keyword ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, JavaScript ਚਾਰ ਕੰਮ ਕਰਦੀ ਹੈ:
- ਇਹ ਇੱਕ ਨਵਾਂ ਖਾਲੀ object ਬਣਾਉਂਦੀ ਹੈ।
- ਇਹ
thisਨੂੰ ਉਸ ਨਵੇਂ object ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਨ ਲਈ ਸੈੱਟ ਕਰਦੀ ਹੈ। - ਇਹ function code ਨੂੰ ਚਲਾਉਂਦੀ ਹੈ।
- ਇਹ ਨਵਾਂ object return ਕਰਦੀ ਹੈ।
this keyword ਬਹੁਤ ਜ਼ਰੂਰੀ ਹੈ। Function ਦੇ ਅੰਦਰ, this ਤੁਹਾਡੇ ਨਵੇਂ object ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ।
ਉਦਾਹਰਨ:
function Employee(name, salary) {
this.name = name;
this.salary = salary;
}
const emp1 = new Employee("Ram", 50000);
const emp2 = new Employee("Kumar", 60000);
ਦੋਵੇਂ objects ਇੱਕੋ ਜਿਹਾ ਢਾਂਚਾ ਸਾਂਝਾ ਕਰਦੇ ਹਨ।
Methods ਜੋੜਨਾ:
ਤੁਸੀਂ ਇੱਕ constructor ਦੇ ਅੰਦਰ functions ਜੋੜ ਸਕਦੇ ਹੋ।
function Employee(name, salary) {
this.name = name;
this.salary = salary;
this.displayInfo = function() {
console.log(this.name + " earns " + this.salary);
};
}
Memory management:
Constructor ਦੇ ਅੰਦਰ ਸਿੱਧੇ ਤੌਰ 'ਤੇ methods ਜੋੜਨ ਨਾਲ ਹਰ object ਲਈ ਇੱਕ ਨਵੀਂ ਕਾਪੀ ਬਣ ਜਾਂਦੀ ਹੈ। ਇਸ ਨਾਲ ਜ਼ਿਆਦਾ memory ਦੀ ਵਰਤੋਂ ਹੁੰਦੀ ਹੈ।
ਇਸ ਦੀ ਬਜਾਏ, prototype property ਦੀ ਵਰਤੋਂ ਕਰੋ।
Employee.prototype.greet = function() {
console.log("Hello " + this.name);
};
ਹੁਣ, ਹਰ employee greet method ਦੀ ਇੱਕੋ ਇੱਕ ਕਾਪੀ ਸਾਂਝੀ ਕਰਦਾ ਹੈ। ਇਹ ਤੁਹਾਡੇ code ਨੂੰ ਵਧੇਰੇ ਕੁਸ਼ਲ (efficient) ਬਣਾਉਂਦਾ ਹੈ।
ਸਾਰ (Summary):
- ਇਕੱਲੇ objects ਲਈ object literals ਦੀ ਵਰਤੋਂ ਕਰੋ।
- ਇੱਕੋ ਜਿਹੇ ਢਾਂਚੇ ਵਾਲੇ ਕਈ objects ਲਈ constructor functions ਦੀ ਵਰਤੋਂ ਕਰੋ।
Source: https://dev.to/dev_saravanan_journey/javascript-constructor-functions-k6k