Я написал функцию для периодического удаления объекта.
function add(variable, expireSecond){
this.list[variable] = {"expireSecond": expireSecond, "addTime": (new Date().getTime()) / 1000};
}
function deleteExpiredObject(){
var currentTime = (new Date().getTime()) / 1000;
for (var key in this.list) {
var item = this.list[key];
if (item.expireSecond + item.addTime < currentTime){
delete this.list[key];
}
}
}
Когда я его использовал, я пытался сделать следующее:
add(xxx[1], 300);
Но когда я позвонил deleteExpiredObject()
, кажется, что память не свободна после истечения срока действия объекта. Это из-за ненулевой ссылки на объект в xxx[1]
? Как решить? Есть ли какая-нибудь библиотека, которую я могу использовать?
Спасибо!