Google chrome extension chrome.history api-删除范围

Google chrome extension chrome.history api-删除范围,google-chrome-extension,Google Chrome Extension,Chrome.history API提供了以下方法: 删除范围 chrome.history.deleteRange(对象范围,函数回调) 从历史记录中删除指定日期范围内的所有项目。除非所有访问都在范围内,否则不会从历史记录中删除页面 (来自) 我的问题是:如何定义范围? 我尝试过使用Javascript date()对象,但它们似乎不起作用。 使用简单的整数是行不通的 编辑 因此,大纪元事件实际上是1970年1月1日00:00:00 UTC 为了获得正确的毫秒数,我使用了 var oldDa

Chrome.history API提供了以下方法:

删除范围

chrome.history.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对此的帮助。

根据您链接的文档,范围是一个具有两个属性的对象,
startTime
endTime
,即日期

以自纪元以来的毫秒表示

那么比如说,

chrome.history.deleteRange({startTime:1303125199,endTime:1403125199},…)


应该有用。JavaScript具有将日期对象转换为纪元的内置功能。

当您使用简单整数时,这些整数代表什么?我以为纪元就是打开Chrome窗口,所以我使用了0,然后按下了按钮。当然,现在我知道我做错了。获取当前UNIX时间戳的一种更惯用的方法是
Date.now()
,而不是
new Date().valueOf()
。根据StackOverflow上的其他帖子,它也更快,因为它不会每次调用都创建新对象。我已经根据你的建议编辑了我的帖子。这似乎确实奏效了。你是怎么得到这些整数的?你怎么知道开始时间?它代表什么?endTime也是如此。你可以从普通的日期对象到“从纪元开始的毫秒数”,这就是这些整数的意思。1403125199表示自该日期起的1403125199秒(即16240天)。“历元”一词的意思是“参考时间”。大纪元是一种将日期和时间表示为易于解析的数字的简单方法。啊哈!所以这是我没有得到的一点。因为我是一个非常新的编码人,我认为新纪元是Chrome的开始!非常感谢!