class

A simple yet powerful Ruby-like Class inheritance system

  • class

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
class
100.1.49 years ago9 years agoMinified + gzip package size for class in KB

Readme

class.js
A super simple ruby like class system with class property and instance property inheritance.

Class.js does not use constructors

var Animal = Class.new()
new Animal //=> TypeError: object is not a function

The reason Animal is not a Function is because functions cannot delegate their properties to another Function.

Examples

var Animal = Class.new({
  initialize: function(){
    this.birthdate = new Date;
  }
});

var Mammal = Animal.subclass(function(){

  this.initialize = function(name){
    this.name = name
    this.super('initialize').apply(this);
  };

});

var Dog    = Mammal.subclass();

var Cat    = Mammal.subclass();

var sparky = Dog.new('sparky');

var mitten = Cat.new('mitten');

Tests

npm install mocha
npm install expect.js
mocha -R list