inheritance in JS has own property

by bhupendra negi

JavaScript

// PROTOTYPE SAMPLE for has own property 
// will iterate over inherited values 

function GrandParent(name) {
  this.type = name;
  this.show = function() {
    alert("IN GrandParent");
  }
  this.tag = "gp";

}

function Parent(name) {
  this.type = name;
  this.display = function() {
    alert("In Parent");

  }

}


function Child(name) {
  this.type = name;
  this.show = function() {
    alert("IN Child");
  }
}

// parent inheritance from grandparent
Parent.prototype = new GrandParent("Granny");

//child inheritance from parent
Child.prototype = new Parent("Parent");

//creating child object
var child = new Child("kid");

// child ovverides parent's methods

for (var obj in child) {
  // check for has own property to avoid iterating over protiotype properties   

  if (child.hasOwnProperty(obj))
    console.log(obj);

}