【发布时间】:2018-02-04 05:21:07
【问题描述】:
我想从 2016 年 11 月 28 日开始。 我希望时间显示为 1 年 2 个月 6 天 17 小时 19 分 36 秒。
var dateString = '11/28/2016';
var now = new Date();
var today = new Date(now.getYear(), now.getMonth(), now.getDate());
var yearNow = now.getYear();
var monthNow = now.getMonth();
var dateNow = now.getDate();
var dob = new Date(dateString.substring(6, 10),
dateString.substring(0, 2) - 1,
dateString.substring(3, 5)
);
var yearDob = dob.getYear();
var monthDob = dob.getMonth();
var dateDob = dob.getDate();
var time = {};
yearTime = yearNow - yearDob;
if (monthNow >= monthDob)
var monthTime = monthNow - monthDob;
else {
yearTime--;
var monthTime = 12 + monthNow - monthDob;
}
if (dateNow >= dateDob)
var dateTime = dateNow - dateDob;
else {
monthTime--;
var dateTime = 31 + dateNow - dateDob;
if (monthTime < 0) {
monthTime = 11;
yearTime--;
}
}
time = {
years: yearTime,
months: monthTime,
days: dateTime
};
if (time.months < 9) {
time.months = '0' + time.months;
}
if (time.days < 9) {
time.days = '0' + time.days;
}
$('#cnt_year').text('0' + time.years);
$('#cnt_month').text(now);
$('#cnt_days').text(time.days);
它显示年、月和日,但我如何添加小时和分钟。
【问题讨论】:
-
您的
dateString没有时间。你要假设 1200 万吗? -
使用框架可以更好地解决一些问题。看看 momentjs。
-
使用框架可以更好地解决一些问题。看看 momentjs。
-
momentjs 的 diff() 函数正是你要找的
-
使用框架可以更好地解决一些问题。看看 momentjs。
标签: javascript time