节点JS:时间机器坏了——timekeeper.travel不做时间旅行

Node JS: Broken time machine - timekeeper.travel does not do to time-travelling

本文关键字:时间 旅行 travel timekeeper 时间机器 坏了 节点 JS      更新时间:2023-09-26

有一个很好的测试库,叫做Timekeeper。我试着用它来测试与时间相关的代码,但它似乎根本不会影响Date()。我做错了什么?

var timekeeper = require('timekeeper');
timekeeper.travel(Date.parse("20/04/2016 12:00:00 AM"));
console.log("Time now: "+(new Date()).toLocaleString());

我认为Date.parse()坏了。(您的解析结果为NaN btw)。我的精神很弱,所以我总是依靠时机来处理日期/时间。

var moment = require('moment');
var timekeeper = require('timekeeper');
var d=moment("20/04/2016 12:00:00 AM", "DD-MM-YYYY hh:mm:ss a").toDate(); 
timekeeper.travel(d); 
console.log("Time now: " + moment().format() );

哦,看那个,时刻已经是对计时员的依赖了。我似乎不是唯一一个精神衰弱的人。