javascript - 在javascript(jquery)中销毁一个函数

标签 javascript jquery memory-leaks selectable

有谁知道如何销毁 javascript (jquery) 函数吗? 我正在使用 jquery“selectable”,并且在可选择的“stop”事件上触发了一个函数调用“edit”。

在这个“编辑”函数中,我嵌套了带有很多“点击”事件的开关函数 我在每个“点击”事件中都有很多功能。我的问题是, 每次我触发“可选”功能和事件时,“编辑”功能都会再次触发,但之前的功能和事件仍然存在。 我现在要做的是取消绑定(bind)功能“编辑”中的每个事件,甚至可以选择“开始”。

这是内存泄漏问题吗? 有没有办法“破坏”javascript 中的函数? 我试图在函数结束时将函数声明为 null 但这不起作用。它里面的函数和事件仍然存在。

有人知道吗?

演示页面在这里 --> http://dreamerscorp.com/test/test01/javascript_destory_test.html

编辑 2009/10/31 :) 非常感谢您的帮助,您的意见对我很有用,再次感谢!!!

最佳答案

您可以尝试使该函数无效,或者重写它并分配一个什么都不做的匿名函数:

myFunction = null;
// or 
myFunction = function () {};

您也可以在函数本身内执行此操作:

var autoDestroy = function () {
  autoDestroy = null;
  //...
  return 1;
};

autoDestroy(); // returns 1
autoDestroy(); // TypeError: autoDestroy is not a function

关于javascript - 在javascript(jquery)中销毁一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1647980/

相关文章:

javascript - 可以从自身调用函数吗?

ios - 无法解释的内存泄漏 swift iOS

c - Valgrind 通知我 C 中存在内存泄漏,我很确定我已修复该问题

javascript - 如何通过键过滤数组并使用javascript将值推送到另一个数组

javascript - 如何在标题搜索 Magento 中显示带有类别过滤器的产品

javascript - 使用javascript将div元素输出到文本区域

javascript - 使用 drawImage 将加载的图像淡化到 Canvas 中

javascript - 单击时删除多个文本框

javascript - 使用JavaScript多次播放所有音频后,重复播放多个音频

cocoa - 创建对象然后将其添加到向量时是否应该[保留]和[释放]?