【发布时间】:2014-08-09 07:09:39
【问题描述】:
Chrome.history API 提供了这个方法:
删除范围
chrome.history.deleteRange(对象范围,函数回调)
从历史记录中删除指定日期范围内的所有项目。除非所有访问都在该范围内,否则页面不会从历史记录中删除。
(来自https://developer.chrome.com/extensions/history#method-deleteRange)
我的问题是:你如何定义范围?
我尝试过使用 Javascript date() 对象,但它们似乎不起作用。 使用简单的整数是行不通的。
编辑
事实证明,纪元事件实际上是 1970 年 1 月 1 日 00:00:00 UTC
为了获得正确的毫秒数,我使用了
var oldDate = Date.now();
对于第一个 startDate 属性和
var newDate = Date.now();
用于 endDate 属性。
在我的情况下,编码结果是:
chrome.history.deleteRange( {startTime: oldDate , endTime: newDate } , function(){
console.log("Dates Removed");
});
非常感谢 bzlm 提供的帮助。
【问题讨论】:
-
当你使用简单整数时,这些整数代表什么?
-
我以为纪元是Chrome窗口的开启,所以我用了0,然后按了一个按钮的mills数量。当然,现在我知道我做错了。
-
获取当前 UNIX 时间戳的更惯用方法是
Date.now(),而不是new Date().valueOf()。 -
根据 StackOverflow 上的其他帖子,它也更快,因为它不会在每次调用它时创建一个新对象。我已根据您的建议编辑了我的帖子。