come vedi qui
codice:
if(!Array.prototype.push) {
	Array.prototype.push = function(v) {
		this[this.length]=v;
	}
}
non è necessario incrementare la proprietà length... perchè lo fa in automatico all'inserimento di un nuovo valore nell'array...
se invece vuoi sliciare un array... allora puoi modificare la length... ed è giusto che sia così!
se non ho capito il tuo problema dimmi pure