Suponha que eu tenho este código:
var myArray = new Object();
myArray["firstname"] = "Bob";
myArray["lastname"] = "Smith";
myArray["age"] = 25;
Agora se eu quisesse remover "sobrenome"?.... há algum equivalente a
myArray["lastname"].remove()
?
(Preciso que o elemento desapareça porque o número de elementos é importante e eu quero manter as coisas limpas).
Use o " delete" palavra-chave em Javascript.
delete myArray["lastname"];
EDITAR:
Em algum mecanismo JavaScript, a palavra-chave delete pode prejudicar o desempenho, pois irá desfazer a compilação / otimização do JIT.
http://www.html5rocks.com/en/tutorials/speed/v8/ http://www.smashingmagazine.com/2012/11/writing-fast-memory-efficient-javascript/
Todos os objectos em JavaScript são implementados como hashtables/associative arrays. Portanto, os seguintes são o equivalente:
alert(myObj["SomeProperty"]);
alert(myObj.SomeProperty);
E, como já indicado, você "remove" uma propriedade de um objeto através da palavra-chave delete
, que você pode utilizar de duas maneiras:
delete myObj["SomeProperty"];
delete myObj.SomeProperty;
Espero que a informação extra ajude...