我有一个带有时间戳的对象(以毫秒为单位):

const indexes = {
      index1: 1490659200000 // 2017-03-28
      index2: 1490659200000 // 2017-03-28
      index3: 1498608000000 // 2017-06-28
}


如何删除时间戳记比当前时间早一年的索引。 new Date().getTime()-1522269838207
实际上,循环遍历对象并删除早于1年的时间戳的更快方法是什么。也许最好将其转换为yyyy-mm-dd并比通过yyyy,mm-dd进行比较

Object.keys(indexes).forEach(i => {
   if (indexes[i] < new Date().getTime())
     delete indexes[i];
})

最佳答案

const YEAR_IN_MS = 31556952000; // Year in milliseconds
var now = Data.now(); // current timestamp
Object.keys(indexes).forEach(i => {
    if (now - indexes[i] >= YEARS_IN_MS) // get difference time and check if greater or equal than year
        delete indexes[i];
})

关于javascript - 在JavaScript中从当前时间中删除超过一年的时间戳属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49544141/

10-11 20:20
查看更多