Timo: Array-Steuerung

Beitrag lesen

Hi Forum,

Ich möschte ein Array in JS während der Laufzeit in der Größe ändern. D.h. ich muß Elemente anhängen und wieder löschen. In Netscape ab 4.0 geht dies mit pop() und push() wunderbar.

Meine Frage:
Wie mache ich es im IE?

Danke im Vorraus

ALEX

Array.prototype.numberOf = entriesOf
Array.prototype.remove = kill
Array.prototype.removeNr = killn
Array.prototype.indiOf = posi

function not(bol) {
bol = (bol) ? false : true
return bol
}

function entriesOf(what) {
var count = 0;
for (me = 0 ; me < this.length ; me ++ ) {
if (this[me] == what ) {count++};
}
return count;
}
function posi(named) {
var count = -1;
var me =0
while (me < this.length && count == -1 ) {
if (this[me] == named ) {count = me};
me ++
}
return count;
}

function kill(named) {
var i = 0
var z = new Array()
while ( i< this.length ) {
if (this[i] != named) {
                z = z.concat(this[i]) }
i++
}

return z
}

function killn(named) {
var i = 0
var z = new Array()
while ( i< this.length ) {
if (i != named) {      
                z = z.concat(this[i]) }
i++
}

return z
}

Die dinger hatte ich mir mal für ein ähnliches problem geschrieben (no pop() ) bzw wohl genau das selbige.

jede deiner Arrays die du nach dem prototype erstellst kann dan etwas mehr.

z.B.:

x = new Array(20)
x[5] = "hallo"

x.indiOf("hallo") liefert 5

x = x.remove("Hallo") entfernt Hallo, die reien folge wird nicht geändert un die neue array ist um eins kürzer

x = x.removeNr(5) selbiges nur über den Indice.

So und morgen schreiben wir die Funktionen so um das wir mehrere Parameter übergeben können :)

Timo