如果我不斷在畫布上繪製對象,並將舊對象移出邊界,那麼舊對象是否仍然佔用內存?畫布上的超視野對象會消耗內存嗎?
例如,這jsfiddle
var canvas = d3.select("body").append("canvas")
.attr("width", 200)
.attr("height", 200);
var ctx = canvas.node().getContext("2d");
ctx.fillStyle = "#f00";
(function tick() {
ctx.fillRect(10, 10, 10, 10);
ctx.translate(10, 10);
setTimeout(tick, 500);
})();
我不斷拉rects,而將舊rects了現場。
觀察
通過@meagar建議,我試過鉻探查,似乎出的視圖對象不佔用內存。
在Chrome的開發人員工具中進行測試非常容易。運行你的程序,看內存圖。 – meagar
@meagar尼斯。永遠不要想到這一點。我會嘗試。 – gongzhitaao