提问者:小点点

JavaScript-如何获取当前日期,并存储以前的日期,在列表中使用?


我想制作一个带有以前日期、当前日期的UL,并将这些列出的项目嵌套在其中。一个例子是:

•   Monday November 13, 2017
   o    List item
   o    List item
   o    List item
•   Tuesday November 14, 2017
   o    List item
   o    List item
   o    List item
•   Wednesday November 15, 2017
   o    List item
   o    List item
   o    List item

我将通过JavaScript获取当前日期。

我怎样才能做到以下几点?

  1. 通过JavaScript获取当前日期
  2. 存储以前的日期(即昨天的日期、前一天的日期等)

注意:每次添加新列表项(如待办事项应用程序)时,将保存当前日期。如果我第二天返回应用程序,则会保存昨天的日期,并添加当前日期。希望这有意义!

提前谢谢!


共2个答案

匿名用户

应用以下代码。

var todayDate = new Date();
var yesterdayDate = new Date(new Date().getTime() - 24 * 60 * 60 * 1000);
var beforeDate = new Date(new Date().getTime() - 2 * ( 24 * 60 * 60 * 1000));
 console.log("Today Date: " + todayDate );
 console.log("yesterday Date: " + yesterdayDate );
 console.log("before Date: " + beforeDate );

匿名用户

看看这个例子:

var ul = document.getElementById('mylist');

var daysAmount = 3;
var items = [
  {v: 'v1'},
  {v: 'v2'},
  {v: 'v3'},
];

var ts = new Date() / 1;
  
for(var i = daysAmount; i >= 0; i--){ // 3 previous + today = 4 days on list
  var shift = i * (1000 * 60 * 60 * 24);
  
  var previousDay = new Date(ts - shift);
  
  var li = document.createElement('li');
  var nestedUl = document.createElement('ul');
  items.forEach(function(el){
    var nestedLi = document.createElement('li');
    nestedLi.innerText = el.v;
    nestedUl.appendChild(nestedLi);
  });
  
  li.innerText = previousDay;
  li.appendChild(nestedUl);
  ul.appendChild(li)
}
<ul id="mylist">
</ul>