Ich habe ein assoziatives Array in einem anderen assoziativen Array gespeichert. Ich weiß, wie man einen bestimmten Wert in einem regulären Array als solchen zusammenfügt:
arr.splice(arr.indexOf("specific"), 1);
Ich habe mich gefragt, wie man ein Array wie dieses zusammenfügen kann:
arr["hello"]["world"]
BEARBEITEN Würde das verkürzen hello["world"]["continent"]
var hello = {};
hello["world"] = {};
hello["world"]["continent"] = "country";
delete hello["world"]["continent"];
alert(hello["world"]["continent"])
Antworten:
2 für die Antwort № 1Sie sollten nur das Schlüsselwort delete verwenden können.
delete arr["hello"]["world"]
Wie entferne ich Objekte aus einem assoziativen JavaScript-Array?
Bearbeiten, basierend auf anderen Kommentaren:
Aus Gründen der Lesbarkeit können Sie auch Folgendes tun:
delete arr.hello.world
Da es sich eigentlich nur um Objekte und nicht um herkömmliche Arrays handelt, gibt es keine Arraylänge. Sie können jedoch einen Schlüssel aus einem Objekt löschen.
1 für die Antwort № 2
JavaScript hat keine assoziativen Arrays.
Objekte verwenden:
var x = {
a : 1,
b : 2,
c : {
a : []
}
}
delete x.c.a;
0 für die Antwort № 3
Ein "assoziatives Array" in Javascript ist eigentlich kein Array, sondern nur ein Objekt, für das Eigenschaften festgelegt wurden. Foo["Bar"]
ist das Gleiche wie Foo.Bar
. Man kann hier also nicht wirklich über das Schneiden oder die Länge sprechen.