2010-03-21 68 views

回答

9

您可以分配一個新的數組它:

 
var array = ["element1","element2","element3"]; 
... 
array = new Array(); 

OR

array = []; 
+0

爲我工作,,, – 2011-12-22 12:26:34

+0

該代碼將設置變量「數組」到一個新的空數組。如果你沒有在其他地方引用原始數組「array」,這是完美的,因爲這實際上創建了一個全新的(空)數組。你應該小心這個方法,因爲如果你從另一個變量或屬性引用這個數組,原始數組將保持不變。 您可以改爲使用array.length = 0。 – amilaishere 2015-09-25 08:34:36

1
var array = ["elem", "item"]; 
... 
array = []; // Empty! 
2
array.length = 0 

應該工作。

3

怎麼樣刪除?

delete array 

或者刪除一個指標:

delete array[x] 
+3

-1'delete'不起作用。證明:http://jsfiddle.net/k8nhe/ – Tadeck 2012-03-02 21:43:55

+2

@Tadeck當然,刪除不起作用,刪除用於沒有'DontDelete'屬性的對象屬性,而不是具有'DontDelete'的'var'或'function'聲明屬性。如果你將數組設置爲[隱式]窗口屬性或[顯式](http://jsfiddle.net/ult_combo/k8nhe/2/)將在**大多數**瀏覽器中工作('delete'是依賴於實現的)。 [有關刪除的更多信息](http://perfectionkills.com/understanding-delete/#property_attributes)。 (但當然,這不是聲明數組的理想方式) – 2012-08-10 13:03:03

+0

刪除不適用於數組。它唯一的工作變量。 – 2015-01-13 11:13:46

0

僅供參考(我知道它的老回答)


如果要清空陣列,已已經有answered。 如果你想取消設置數組,你可以指定一個未設置變量...

var undef; 
var myArr = []; 
... 
myArr = undef; 
// typeof myArr == undefined