2015-08-17 33 views
-3

當用戶打開一個模式,我創建一個類:如果用戶在整個使用本網站的一遍又一遍的打開模式反覆創建課程?

app.product = new app.Product(); 

會發生什麼?

我會得到1000個重複類,還是原來的一次會被一次又一次地替換。

這樣做會對內存/性能產生什麼影響嗎?

+1

你會得到一個新的每一次,但如果您沒有保存舊的任何地方,它最終會被釋放。 – Ryan

+1

你不能測試你的代碼,看看會發生什麼嗎? – j08691

+0

對話框在再次打開之前是否關閉?如果這導致你的變量超出範圍,它將被垃圾收集,並且一次只會有一個實例。 – deceze

回答

0

假設app.product是每次相同的「應用程序」對象和參考,垃圾收集器應該刪除由

新app.Product分配的存儲器();

一旦它創建的對象被解除引用(意味着app.product引用現在指向其他地方,即新對象)。

這是以前的一篇文章,詳細介紹了JavaScript垃圾回收的細節。

What is JavaScript garbage collection?