Skip to content

Instantly share code, notes, and snippets.

@rwaldron
Forked from leobalter/ArrayExtender.js
Created July 15, 2011 03:46
Show Gist options
  • Save rwaldron/1084023 to your computer and use it in GitHub Desktop.
Save rwaldron/1084023 to your computer and use it in GitHub Desktop.
Array Extender. Creates an Array subclass. Doing so you won't override or mess with Array's own prototype
var ArrayExtender = function (a) {
var counter = 0;
for (var i in a) {
if (a.hasOwnProperty(i)) {
this[i] = a[i];
++counter;
}
}
this.length = counter;
};
ArrayExtender.prototype = Array.prototype;
ArrayExtender.prototype.count = function () {
for(var i in this) {
if (this.hasOwnProperty(i)) {
console.log("Element "+i+" is "+this[i]);
}
}
};
var thisWouldWin = new ArrayExtender([123, 234]);
console.log(thisWouldWin);
thisWouldWin.count();
console.log(thisWouldWin.length);
thisWouldWin.push(345);
console.log(thisWouldWin.length);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment