What is factory function and Constructor function in Javascript?

Factory Function in Javascript?
A Factory function is a function that create a object and return it. It is similar to constructor functions.
Factory function is not use this keyword in the object.
Let take the Example of Factory Function:
function createCircle(radius){
return {
radius,
draw(){
console.log('Draw a line')
}
}
}
const newCircle = createCircle(5);
console.log(newCircle)
What is constructor Function?
Constructor function is a special function which initialize a object when it called.
when we call a constructor, we should use new keyword.
It is a create new empty object and we also do not need to return word in the function body.
May be you don’t know that, A function is a object.
In Constructor function, this keyword refer to existing object.
Also use first word capital in function name like:
function CreateCircle(){
}
let’s take the Example of Constructor Function:
function CreateCircle(radius){
this.radius = radius;
this.draw = function(){
console.log(`Call a Draw Function with ${radius}`);
}
}
const createcircle = new CreateCircle(5);
console.log(createcircle.draw())
when we are calling a constructor 3 things are happening:
- First create a new empty object
- using this keywords for property
- The new object is then returned as the return value of the constructor.
Most of the student confuse with this keyword. I will also explain in details about it.
Which one do you use factory function or constructor function, please us know by giving comments.



