在设定时间后销毁对象

时间:2013-11-08 08:49:31

标签: javascript

我一直在寻找这个,但已经空白了

是否可以在javascript中创建一个具有设定生存时间的对象实例,之后它将被销毁?

一个案例是每5秒将一个项目添加到一个数组中并在视觉中显示,然后每个项目在查看一分钟后应该被删除。我犹豫是否每隔一秒运行一次超时函数检查数组以清除它们。

1 个答案:

答案 0 :(得分:0)

OOP FTW。为什么不创建某种自我删除对象?

function SelfRemover(){//constructor
};

SelfRemover.prototype.addTo = function(arr) {
   var me = this;
   arr.push(me); //adding current instance to array

   setTimeout(function() { //setting timeout to remove it later
       console.log("Time to die for " + me);
       arr.shift();
       console.log(arr);
   }, 60*1000)
}

用法

var a = [];
setInterval(function(){new SelfRemover().addTo(a); console.log(a);}, 5*1000);