Javascript jQuery-根据时间删除列表项
我目前有一个页面,其中包含一个无序列表。该列表最初是通过查询my db来填充的,每个列表项都有一个时间戳和文本。使用javascript和AJAX,如果有新数据输入,该页面将每隔10秒动态更新无序列表 如果列表项的时间超过24小时,从无序列表中删除列表项的最简单和最有效的方法是什么 我倾向于做以下事情:Javascript jQuery-根据时间删除列表项,javascript,jquery,Javascript,Jquery,我目前有一个页面,其中包含一个无序列表。该列表最初是通过查询my db来填充的,每个列表项都有一个时间戳和文本。使用javascript和AJAX,如果有新数据输入,该页面将每隔10秒动态更新无序列表 如果列表项的时间超过24小时,从无序列表中删除列表项的最简单和最有效的方法是什么 我倾向于做以下事情: 在js文件中,将无序列表中的所有列表项加载到一个数组中 在js调用获取数据的过程中,如果数据返回,也将这些项添加到数组中 每次调用getData()函数时,也要调用removeData()函数,
var list = new Array();
$(".listname").each(function (i){
list.push($(this));
});
要从数组中删除列表项,我希望使用:
list.pop();
运行getData时导出元素的方法似乎很合理。您应该使用push将元素追加到数组的末尾,但是pop只是从数组的末尾提取元素,这可能不是正确的顺序。Javascript数组的行为类似于堆栈而不是队列。您可能希望按照建议将remove添加到javascript数组原型中为什么不按日期对数组进行排序(首先是最早的),然后使用
list.shift()
?这将删除数组中的第一项,如前所述。是否可以在SQL中添加一个WHERE子句以过滤掉超过24小时的项?在初始加载时,SQL会过滤过去24小时的项,但随后列表会附加新项,因此此时需要在客户端管理时间逻辑。