Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Aug 10th, 2012  |  syntax: None  |  size: 1.46 KB  |  hits: 6  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Javascript closures and Inheritance
  2. //---------------------BaseClass.js----------------------------
  3.  
  4. (function () {
  5.     BaseClass= function() { };
  6.     BaseClass.prototype.getTestVar = function() {
  7.     return 'base test variable';
  8.     };
  9. })();
  10.  
  11.  
  12. //----------------DerivedClass.js----------------------------
  13.  
  14. (function () {
  15.     DerivedClass= function() { };
  16.     DerivedClass.inherits(BaseClass);
  17.     DerivedClass.prototype = new BaseClass();
  18.     DerivedClass.prototype = {
  19.         newvar : 'derived func variable ',
  20.         getNewVar : function() { return this.newvar; }
  21.     };
  22. })();
  23.        
  24. var dc = new DerivedClass();
  25. alert(
  26.     'The value in newvar of derived class ' + dc.getNewVar() +
  27.     ' base class variable ' + dc.getTestVar()
  28. );
  29.        
  30. DerivedClass.prototype = new BaseClass();
  31. DerivedClass.prototype = {
  32.     newvar : 'derived func variable ',
  33.     getNewVar : function() { return this.newvar; }
  34. };
  35.        
  36. DerivedClass.prototype = new BaseClass();
  37. DerivedClass.prototype.newvar = 'derived func variable ';
  38. DerivedClass.prototype.getNewVar = function() { return this.newvar; };
  39.        
  40. DerivedClass.prototype = new BaseClass();
  41. DerivedClass.prototype = {
  42.     newvar : 'derived func variable ',
  43.     getNewVar : function() { return this.newvar; }
  44. };
  45.        
  46. DerivedClass.prototype = new BaseClass();
  47. DerivedClass.prototype.newvar = 'derived func variable';
  48. DerivedClass.prototype.getNewVar = function() { return this.newvar; }
  49.        
  50. DerivedClass.method('getNewVar', function () { return this.newvar });