我正在使用momentjs进行日期操作,希望编写这样一种情况的代码:如果给定时间戳和时区名称,则将时间重置为午夜。例如:
我希望函数
我输入的时间戳是2017年5月5日上午11:30 UTC。我期望该函数返回2017年5月5日
let timestamp = 1493638245234;
expect(new Date(timestamp).toISOString()).toBe('2017-05-01T11:30:45.234Z'); // Time in UTC
let truncatedTimestamp = functionName(timestamp, 'America/Los_Angeles');
console.log(truncatedTimestamp);
expect(new Date(truncatedTimestamp)).toBe('2017-05-01T04:00:00.000Z');
const functionName = (timestamp, timezone) => {
return moment
.tz(timestamp, timezone)
.startOf('day')
.toDate()
.getTime();
};
我希望函数
'functionName'
返回America/Los_Angeles
时间的午夜而不是UTC时间。我输入的时间戳是2017年5月5日上午11:30 UTC。我期望该函数返回2017年5月5日
America/Los_Angeles
的时间戳为00:00(因为2017年5月5日上午11:30 UTC将会是America/Los_Angeles
时间的上午11:30 -7小时),并将其转换为毫秒。