2010-03-21 26 views

Trả lời

6

Gán một mảng trống để nó

x = [] 
9

bạn có thể gán một mảng mới với nó:

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

HOẶC

array = []; 
+0

mà làm việc cho tôi ,,, –

+0

Mã này sẽ đặt biến "mảng" tới mảng sản phẩm nào mới. Điều này là hoàn hảo nếu bạn không có tham chiếu đến mảng ban đầu "mảng" bất cứ nơi nào khác bởi vì điều này thực sự tạo ra một mảng hoàn toàn mới (trống). Bạn nên cẩn thận với phương thức này bởi vì nếu bạn đã tham chiếu mảng này từ một biến hoặc thuộc tính khác, mảng ban đầu sẽ không thay đổi. bạn có thể sử dụng array.length = 0 để thay thế. – amilaishere

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

sẽ hoạt động.

3

Điều gì về xóa?

delete array 

Hoặc để xóa một chỉ số duy nhất:

delete array[x] 
+3

-1 'xóa' không hoạt động. Bằng chứng: http://jsfiddle.net/k8nhe/ – Tadeck

+2

@Tadeck Tất nhiên xóa không hoạt động, xóa là cho các thuộc tính đối tượng mà không có thuộc tính 'DontDelete', không phải là' var' hoặc 'function' khai báo có' DontDelete' thuộc tính. Nếu bạn đặt mảng thành một thuộc tính cửa sổ [ngụ ý] (http://jsfiddle.net/ult_combo/k8nhe/1/) hoặc một [tường minh] (http://jsfiddle.net/ult_combo/k8nhe/2/) sẽ hoạt động trên ** hầu hết các trình duyệt ('xóa' phụ thuộc vào việc triển khai thực hiện). [Thông tin thêm về xóa] (http://perfectionkills.com/understanding-delete/#property_attributes). (nhưng tất nhiên, đây không phải là cách lý tưởng để khai báo mảng) –

+0

xóa không hoạt động đối với mảng. công việc duy nhất của nó cho biến. –

0

Để tham khảo (Tôi biết cũ của mình và trả lời)


Nếu bạn muốn để trống mảng, mà đã được answered rồi. Nếu bạn muốn unset mảng, bạn có thể gán một biến unset ...

var undef; 
var myArr = []; 
... 
myArr = undef; 
// typeof myArr == undefined 
Các vấn đề liên quan