5

Tôi có một hàm trong jQuery, ví dụ:Trong jQuery, cách xóa các biến và hàm

var asd; 

function dosomething(){ 
    for (i=0;i<=1000000;i++) 
    { 
    asd[i] = "(2^i)"; 
    } 
} 

Làm cách nào tôi có thể bỏ đặt các biến sau hàm?

delete $asd;

Với điều này, tôi có thể xóa biến khỏi bộ nhớ.

Nhưng tôi có thể đạt được hàm hủy của hàm trong jQuery và làm thế nào tôi có thể bỏ đặt toàn bộ hàm trong hàm hủy của hàm?

THE TẠI SAO

Chức năng và tất cả các biến toàn cầu đang trong bộ nhớ sau khi chạy một kịch bản.
Nếu tôi chạy một cái gì đó bằng bàn điều khiển, sau khi đã sẵn sàng, vì tất cả các biến vẫn nằm trong bộ nhớ - chương trình sẽ chạy.

Vì vậy, tôi muốn xóa các biến trên chức năng desctructor, sau đó đặt lại chức năng, hoặc làm cho nó để null.

Vì nó sẽ xóa toàn bộ tập lệnh khỏi bộ nhớ nên trang của tôi sẽ nhanh hơn. Hãy tưởng tượng một cấu trúc dữ liệu lớn hơn một chút so với một hàm duy nhất, như 100 hàm và 800 biến toàn cục. Sau khi hiển thị, tôi không cần các biến nữa.

+1

Lưu ý bạn gọi nó là 'asd' không phải '$ asd'. – pimvdb

+0

Có lẽ tôi không hiểu câu hỏi, nhưng không phải là biến cục bộ đã bị xóa hoặc được đánh dấu để thu thập rác sau khi bạn thoát khỏi chức năng? – JJJ

+1

Bạn có hỏi cách gọi 'xóa' trên một hàm không? Đã cố gắng 'xóa cửa sổ ['dosomething']'? – Sorpigal

Trả lời

19

Set nó để xác định:

asd = undefined; 

Cập nhật Để bỏ đặt một chức năng, làm:

myFunction = undefined; 

Bạn không cần dấu ngoặc đơn. Trong nhận xét của bạn, bạn đã bỏ lỡ undefined

+7

Bạn đã đánh vần sai số không xác định .. – betamax

+4

Oh sự mỉa mai ^^ – Matt

+0

Ồ đúng rồi. Bạn đã thắng. –

0

Xóa bộ phần tử phù hợp khỏi DOM. Sử dụng .remove ([bộ chọn]).

Hy vọng điều này sẽ giúp bạn.

+3

OP hỏi về việc không đặt biến, không xóa phần tử –

Các vấn đề liên quan