Ofenfrisch: Element aus der Mitte eines Arrays löschen

Hi!

Ich habe folgendes Problem: Ich will aus einem Array ein Element löschen, das sich weder am Ende noch am Anfang befindet.
Daher kann ich kein pop() und unshift() anwenden.

Welche (vordefinierte) Funktion könnte ich sonst benutzen?

Was mir sehr wichtig dabei ist, das das Element vollkommen weg ist, also das die Arraygesammtlänge um 1 kürzer ist.

Vielen Dank schon mal für eure Antworten!

Gruss Ofenfrisch!

  1. Hallo Ofenfrisch,

    Welche (vordefinierte) Funktion könnte ich sonst benutzen?

    Eine vordefinierte Funktion gibt es dafür nicht. Du kannst dir aber selbst eine Funktion schreiben, die in einer Schleife alle Elemente ab der zu löschenden Position + 1 um eine Position nach vorne schiebt und zum Schluss das letzte Element auf null setzt.

    Grüße
    Andreas

    --
    "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning."
    (Rich Cook)
    1. Danke!
      Das wird mir helfen!

  2. Hallo,

    Ich habe folgendes Problem: Ich will aus einem Array ein Element löschen, das sich weder am Ende noch am Anfang befindet.

    Die Array-Methode splice() leistet das. So wird z. B. das dritte Element von a entfernt:

    a=new Array(1,2,3,4,5);
    a.splice(2,1);
    alert(a); // 1,2,4,5

    Mit a.splice(2,2); werden zwei Elemente (3 und 4) entfernt.

    MfG, Thomas

    --
    SVG - Learning By Coding
    http://svglbc.datenverdrahten.de/