Skip to content

Instantly share code, notes, and snippets.

@vgvinay2
Forked from abdulapopoola/gist:5251693
Last active March 9, 2017 15:04
Show Gist options
  • Save vgvinay2/09000a5c9c2884153aa1 to your computer and use it in GitHub Desktop.
Save vgvinay2/09000a5c9c2884153aa1 to your computer and use it in GitHub Desktop.
//Constructor
var Person = function (name, age){
//private properties
var priv = {};
//Public properties
this.name = name;
this.age = age;
//Public methods
this.sayHi = function(){
alert('hello');
}
}
// A static method; this method only
// exists on the class and doesn't exist
// on child objects
Person.sayName = function() {
alert("I am a Person object ;)");
};
// An instance method;
// All Person objects will have this method
Person.prototype.setName = function(nameIn) {
this.name = nameIn;
}
// Tests
var per = new Person('John Doe', 22);
//Shows alert
Person.sayName();
//TypeError: Object [object Object] has no method 'sayName'
per.sayName()
//Show alert
per.sayHi();
//John Doe
per.name;
//22
per.age;
per.setName('Jane Doe');
//Jane Doe
per.name;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment