Skip to content

Instantly share code, notes, and snippets.

@phaze9
Created November 11, 2011 18:21
Show Gist options
  • Save phaze9/1358751 to your computer and use it in GitHub Desktop.
Save phaze9/1358751 to your computer and use it in GitHub Desktop.
08_inheritance.js
// 1. Write a class to support the following code:
var Person = function(name) {
this.name = name;
}
var thomas = new Person('Thomas');
var amy = new Person('Amy');
console.log(thomas.name) // --> "Thomas"
// 2. Add a getName() method to all Person objects, that outputs
// the persons name.
Person.prototype.getName = function() {
return this.name;
}
console.log(thomas.getName()) // --> "Thomas"
// 3. Write a statement that calls Thomas's getName function,
// but returns "Amy".
console.log(thomas.getName() ? 'Amy' : 'Amy') // --> "Amy"
// 4. Remove the getName() method from all Person objects.
delete Person.prototype.getName
console.log(amy.getName()) // --> TypeError: Object [object Object] has no method 'getName'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment