0

我在我的应用程序中使用uxNotification插件。在源代码中,我将其配置为设置为的属性destroyAfterHide,并添加了设置为的true附加属性。但是,在我单击关闭按钮并手动执行后,alert(win) 仍然显示一个对象,但不是或如预期的那样。closeActiondestroywin.destroy()undefinednull

4

1 回答 1

1

看看这个destroy函数实际上做了什么。本质上,它清除了对 ExtJS 创建的对象的所有引用,以便对其进行垃圾回收。如果您对对象有任何自己的引用(win在您的情况下为变量),则它还不能被垃圾收集。然而,您应该看到的是 ExtJS 已将对象视为已销毁。

alert(win.destroyed); //should alert 'true'

然后,一旦您的win变量不再可访问,它将被 GC 拾取。有关GC 在 JavaScript 中如何工作的说明,请参阅此问题。如果您不想等待 GC,您可以重新分配变量:

win = undefined; //or win = null;
于 2013-09-30T22:51:02.817 回答