aklass

A small utility to simulate inheritance in javascript.

Usage no npm install needed!

<script type="module">
  import aklass from 'https://cdn.skypack.dev/aklass';
</script>

README

aKlass

A small utility to simulate inheritance in javascript.

Creating a class

var aKlass = require('aklass');

var Foo = aKlass.klass({ foo: null, initialize: function () { ... }, setFoo: function (foo) { this.foo = foo; } });

var foo = new Foo(); foo.setFoo(1); console.log(foo.foo); // logs 1

Inheritance

var Bar = aKlass.extend(Foo, { initialize: function () { Bar.$super.call(this); }, setFoo: function (foo) { foo = foo * 2; Bar.$superp.call(this ,foo); } });

var bar = new Bar(); bar.setFoo(1); console.log(bar.foo); // logs 2

Static variables

var Baz = aKlass.klass({ statics: { FOO: 1, BAR: 2 } });

console.log(Baz.FOO); // logs 1

Mixins

var mix = { a: 1, b: 2 };

var Baz = aKlass.klass({ mixins: [mix], initialize: function () { console.log(this.a); } });

var baz = new Baz(); // logs 1