Javascript 如何从内部删除对象?

Javascript 如何从内部删除对象?,javascript,object,Javascript,Object,我想知道当这个对象不再使用时,如何从内部删除它 例如: var MyObject = function () { return { 'some': function() {...}, 'actions': function() {...}, 'destroy': function() { this = null; // throws a "ReferenceError: Invalid left-hand side

我想知道当这个对象不再使用时,如何从内部删除它

例如:

var MyObject = function () {
    return {
        'some': function() {...},
        'actions': function() {...},
        'destroy': function() {
            this = null; // throws a "ReferenceError: Invalid left-hand side in assignment"
        },
    }
}

// Doing so, I would be able to :
var obj = new MyObject();
obj.some();

// And when I have finished :
obj.destroy();
这背后的原因是我不能从外部销毁它(对象是在DOM元素上“单击”时创建的,但当您单击其他位置时它将被销毁,因此创建的范围(在“onClick”方法中)在我要删除它的位置不可用


我该怎么做呢?

JavaScript根本不能这样工作。事实上,你不能销毁任何对象。你能做的唯一一件事是确保你没有对对象的引用,这将使它符合JS运行时的垃圾收集条件。如果你发布一个更完整的代码片段,我们可以告诉你是否是否存在内存泄漏,但如果您对每个
.on
都执行了相应的
.off
,并将任何引用变量设置为
null
,这就是您在JavaScript中可以和应该执行的全部操作。

JavaScript根本无法以这种方式工作。事实上,您无法销毁任何对象。唯一的方法是g您可以做的是确保您没有任何对对象的引用,这将使其符合JS运行时垃圾收集的条件。如果您发布更完整的代码片段,我们可以告诉您是否存在内存泄漏,但如果您对每个
.off
执行了相应的
。on
并设置了任何引用变量允许
null
,这是您在JavaScript中可以和应该做的全部工作。

您可以尝试
删除此
事实上,不,我刚刚看到我的问题的副本:(这将回答您的问题)您可以尝试
删除此
事实上,不,我刚刚看到我的问题的副本:(这将回答您的问题)