Hi there,

I just started to us Ext and like it alot!

But there is an issue with the extensions it add to the array object using:

Ext.applyIf(Array.prototype, {
indexOf : function(o){
for (var i = 0, len = this.length; i < len; i++){
if(this[i] == o) return i;
return -1;

remove : function(o){
var index = this.indexOf(o);
if(index != -1){
this.splice(index, 1);

We are using the following style to go through the items in an array:

arrayX = [];
arrayX['key1'] = 'foo';
arrayX['key2'] = 'bar';

for(var key in arrayX) {
var element = arrayX[key];

But with the addition of indexOf and remove this no longer works because these functions are now also retruned as key's in the array.

Is there a way to avoid this problem?