index.js
function ArrayIndex (_length) {
  Object.defineProperty(this, 'length', {
    get: getLength,
    set: setLength,
    enumerable: false,
    configurable: true
  });

  this[length] = 0;

  if (arguments.length > 0) {
    setLength.call(this, _length);
  }
}
function ArrayIndex (_length) {
  Object.defineProperty(this, 'length', {
    get: getLength,
    set: setLength,
    enumerable: false,
    configurable: true
  });

  this[length] = 0;

  if (arguments.length > 0) {
    setLength.call(this, _length);
  }
}
function ArrayIndex ( _length ) { Object . defineProperty ( this , 'length' , { get : getLength , set : setLength , enumerable : false , configurable : true } ) ; this [ length ] = 0 ; if ( arguments . length > 0 ) { setLength . call ( this , _length ) ; } }
Subclass this.
Subclass this .