/ / splicing valor específico na matriz de matriz - javascript, matrizes

splicing valor específico na matriz de matriz - javascript, matrizes

Eu tenho um array associativo armazenado em outro array associativo. Eu sei como emendar um valor específico em apenas uma matriz regular como tal:

arr.splice(arr.indexOf("specific"), 1);

Eu queria saber como se poderia emendar uma matriz como esta:

arr["hello"]["world"]

EDITAR Isso encurtaria hello["world"]["continent"]

var hello = {};
hello["world"] = {};
hello["world"]["continent"] = "country";
delete hello["world"]["continent"];
alert(hello["world"]["continent"])

Respostas:

2 para resposta № 1

Você deve ser capaz de apenas usar a palavra-chave delete.

delete arr["hello"]["world"]

Como faço para remover objetos de um array associativo de javascript?

Editar, com base em outros comentários:

Por uma questão de legibilidade, você também pode fazer:

delete arr.hello.world

Como estamos falando apenas de objetos, e não de matrizes tradicionais, não há comprimento de matriz. Você pode, no entanto, excluir uma chave de um objeto.


1 para resposta № 2

JavaScript não possui matrizes associativas.

Use objetos:

var x = {
a : 1,
b : 2,
c : {
a : []
}
}

delete x.c.a;

0 para resposta № 3

Um "array associativo" em javascript não é na verdade um array, é apenas um objeto que possui propriedades definidas nele. Foo["Bar"] é a mesma coisa que Foo.Bar. Então você não pode realmente falar sobre corte ou comprimento aqui.