Factory function
JavaScript
function createPerson(firstName, lastName) {
return {
firstName: firstName,
lastName: lastName,
getFullName: function () {
return this.firstName + " " + this.lastName;
},
greet: function (person) {
if (typeof person.getFullName !== "undefined") {
return "hello " + person.getFullName();
} else {
return "Hey, There!";
}
}
}
}
var person = createPerson("jane", "Doe"),
person2 = createPerson("John", "Doe");
alert(person.greet(person2));