2011-01-23 73 views
1

我有以下的代碼片段釋放HTML5畫布

var myCanvas = document.createElement("canvas"); 
. . . 
var myCanvasContext = myCanvas.getContext("2d"); 
. . . 

我認爲它正在採取一些顯存。我想在使用它後釋放它們。

以下代碼片段是否可以釋放它們?

myCanvasContext = null; 
myCanvas = null; 

什麼是最佳實踐?

在此先感謝您的幫助。

回答

1

假設您確實在某個時間點將Canvas添加到文檔中,您還需要使用document.removeChild(myCanvas)從DOM中刪除元素。

如果變量將在一段時間內停留在範圍內,那麼也需要將元素設置爲null。

+0

@ ...或設置它們爲'0',或設置它們爲'''你的叔叔'任何不同的值都會導致變量不再持有對該對象的引用,從而允許它被垃圾收集。 – Phrogz 2011-01-24 17:42:29