删除主干中的变量

Deleting a variable in Backbone

本文关键字:变量 删除      更新时间:2023-09-26

我正在开发一个跨平台的应用程序,而我正在使用骨干框架。

在其中有很多观点,我呈现如下视图

例如:

sampleFunction: function() {
    var sampleObject = new window.sampleView();
    sampleObject.Render();
}

然后我的一个朋友碰巧看到了我的代码,他说,在函数中创建的每个变量都应该删除,

sampleFunction: function() {
    var sampleObject = new window.sampleView();
    sampleObject.Render();
    delete sampleObject;
}

我搜索了整个网络,找不到任何与他的理论相关的内容。在网络中,它说变量永远不会被删除。

所以我给他看了一个样本,如下所示,

<script>
    function onBodyLoad() {
        var test = "i'am alive";
        delete test;
        alert(test);
    }
</script>
<body onLoad="onBodyLoad()">
  • 所以我的问题是删除运算符到底是做什么的? 仅用于删除对象属性?

  • 当使用像 backbone 这样的 MV 框架时,带到 DOM 的对象和变量会发生什么?

  • 加载新视图时是否会清除对象和变量?

  • 我们是否需要每次在加载另一个视图之前取消绑定或破坏视图?

关于删除运算符,它将从对象中删除属性。它不会执行与释放内存相关的任何操作。

在 Backbone 中,每当模型附加了一些视图时,它就会在 DOM 中。 view.remove() 将从 DOM 中删除视图和附加的模型。

创建新视图不会删除现有视图。您可以设置侦听器以在创建新视图时删除现有视图。

请参阅此问题:销毁或删除 Backbone 中的视图.js