刪除項目我有用作與鍵/值對的字典項的對象:的Javascript:從對象
var stuff = {};
stuff["jar"] = "biscuit";
我試圖刪除一個項目。到目前爲止,沒有數組方法似乎工作。這甚至是一個數組(正如你可能猜到的,我不是太熱的Javascript)。
如何刪除項目?
刪除項目我有用作與鍵/值對的字典項的對象:的Javascript:從對象
var stuff = {};
stuff["jar"] = "biscuit";
我試圖刪除一個項目。到目前爲止,沒有數組方法似乎工作。這甚至是一個數組(正如你可能猜到的,我不是太熱的Javascript)。
如何刪除項目?
delete stuff['jar']
會刪除它
你創建了一個對象字面和分配「罐子」屬性是「餅乾」,[]
是一個真正的數組的語法,雖然在ECMAScript中的數組是真正的對象,應使用對於數字索引集而不是鍵/值特定集
簡而言之,您正在使用正確的數據類型作業。
delete stuff['jar']
你有一個對象,而不是一個數組。
出於好奇 - 我以前見過這種類型的問題,答案總是'讓GC處理它'。這種情況不同嗎? –
@ ajax81 - 這是不同的。這不是關於釋放內存,而是關於通過刪除其中一個屬性來改變對象的狀態。在這個簡單的例子中,它是唯一的屬性,但是如果你想象一個更復雜的對象有許多屬性,如果你刪除了其中的一個,然後枚舉for..in循環中的對象的(剩餘)屬性,刪除的屬性將不會更長的時間在那裏 - 我相信你可以想象爲什麼你想這樣做的一些原因。 – nnnnnn
@nn - 啊,是的。我懂了。謝謝你澄清。 –