在开发中多多少少会遇到时间的计算,以下只是一个简单的例子。
将时间戳加减指定的分钟数,并将结果转换为年月日时分秒格式:
function addMinutes(timestamp, minutes) {
var date = new Date(timestamp);
date.setTime(date.getTime() + minutes * 60 * 1000);
return date;
}
function formatDate(date) {
var year = date.getFullYear();
var month = (date.getMonth() + 1).toString().padStart(2, '0');
var day = date.getDate().toString().padStart(2, '0');
var hour = date.getHours().toString().padStart(2, '0');
var minute = date.getMinutes().toString().padStart(2, '0');
var second = date.getSeconds().toString().padStart(2, '0');
return year + '-' + month + '-' + day + ' ' + hour + ':' + minute + ':' + second;
}
// 示例:获取当前时间,加上10分钟,再将结果转换为年月日时分秒格式
var now = Date.now();
var after10Minutes = addMinutes(now, 10);
var formattedDate = formatDate(after10Minutes);
console.log(formattedDate);
output:
2021-11-17 11:04:23
Date.parse(new Date(new Date().setHours(new Date().getHours() + 8)))
这段代码的作用是获取当前时间加上8个小时后的时间戳。具体解释如下:
-
new Date()
:创建一个新的Date
对象,表示当前时间。 -
.setHours(new Date().getHours() + 8)
:将当前时间的小时数增加8小时,并返回更新后的毫秒时间戳。 -
new Date(...)
:用更新后的毫秒时间戳创建一个新的Date
对象。 -
Date.parse(...)
:将新建的Date
对象转换为毫秒时间戳。这里使用Date.parse()
是为了确保代码的兼容性,因为旧版的浏览器不支持直接从new Date(...)
获取毫秒时间戳,而Date.parse(...)
可以被所有浏览器支持。
综上,这段代码的含义是获取当前时间加上8小时后的时间戳,用于进一步处理与日期相关的计算或操作。