Factory function

by Susan Delgado

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));