Mäxle: Array/Vektor: 1 Element löschen

Hallo,

ich habe mir einen Array oder wie ihr das nennt, erstellt:
var arr=new Array();
dann erhält er Key/Value Werte:
arr['key1']='value1';
arr['key2']='value2';

und jetzt würde ich gern wieder ein Item löschen, z.B.:
arr['key2']=null;

Genügt das schon oder gibt es eine saubere Methode, ein Element eines Arrays anhand des Keys zu löschen?

-Mäxle

  1. Hallo,

    ich habe mir einen Array oder wie ihr das nennt, erstellt:
    var arr=new Array();
    dann erhält er Key/Value Werte:
    arr['key1']='value1';
    arr['key2']='value2';

    Das ist nun kein Array mehr. Du verwendest hier ein Array als Object, indem Du dem Array-Object Eigenschaften ('key1' und 'key2') hinzufügst. Das ist nicht weiter schlimm, weil Array ja von Object erbt. Allerdings sind Array-Eigenschaften, wie .length und Array-Methoden, wie .sort(), auf die key-Eigenschaften nicht anwendbar. Sauberer wäre es hier
    var arr=new Object();
    zu notieren.

    und jetzt würde ich gern wieder ein Item löschen, z.B.:
    arr['key2']=null;

    Genügt das schon oder gibt es eine saubere Methode, ein Element eines Arrays anhand des Keys zu löschen?

    [ref:self812;javascript/sprache/operatoren.htm#delete@title=delete] arr['key2'];

    viele Grüße

    Axel