如果出生日期格式为YYYYMMDD,我如何计算年龄?是否可以使用该Date()功能?
我正在寻找比我现在使用的解决方案更好的解决方案:
var dob = '19800810';
var year = Number(dob.substr(0, 4));
var month = Number(dob.substr(4, 2)) - 1;
var day = Number(dob.substr(6, 2));
var today = new Date();
var age = today.getFullYear() - year;
if (today.getMonth() < month || (today.getMonth() == month && today.getDate() < day)) {
age--;
}
alert(age);Run Code Online (Sandbox Code Playgroud)
我正在创建一个应用程序,它允许您使用时间范围定义事件.我想在用户选择或更改开始日期时自动填写结束日期.但是,我无法弄清楚如何在两次之间找到差异,然后如何使用这种差异创建一个新的结束日期.
我需要在几天内得到两个日期之间的差异.
到目前为止,我已经能够得到两个日期之间的差异,但不是几天:
date1.getTime() - date2.getTime();
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
嗨,我想以本地化的人类可读方式(例如 9 天 3 小时)表示 luxon 间隔。
从现在开始,我已经实现了这一点。使用此代码:
DateTime.fromISO(value).toRelative({ locale: "es" });
Run Code Online (Sandbox Code Playgroud)
但是我不能使用 Interval o Duration 对象来实现相同的效果。
这就完成了工作。但并不是真正的本地化。
const start = DateTime.fromSQL("2020-06-19 11:14:00");
const finish = DateTime.fromSQL("2020-06-21 13:11:00");
const {days, hours, minutes} = Interval
.fromDateTimes(start, finish, {locale: "es"})
.toDuration(["days", "hours", "minutes"]).values;
console.log(
`${days ? days + " días " : ""} ${hours ? hours + " horas" : ""} ${
minutes ? minutes + " minutos." : ""
}`
);
Run Code Online (Sandbox Code Playgroud) 我有两个日期选择器,用于计算两个日期之间的天数.目前我正在输出天数(见下面的代码),这是毫无意义的.我想以年,月,日输出该数字.我怎样才能做到这一点?
例如,2014年1月1日至01/02/15 = 397天,然后成为1年,1个月,1天
var diff = endDate - startDate;
dayCount = diff / ( 60 * 60 * 24 * 1000 ); // secs * mins * hours * milliseconds
dayCount = Math.round( dayCount ) + this.options.countAdjust;
return dayCount;
Run Code Online (Sandbox Code Playgroud) 我正在尝试比较 2 个日期并通过年、月、日、分和秒来表示差异(转换为毫秒)。我是 JS 新手,我寻找了一种将毫秒转换为年、月、日的现成方法,分,秒但是没找到。请问有这样的方法吗?如果不是,我该怎么做?只是通过划分差异和使用提醒?提前感谢您的帮助。
我在使用JS函数时遇到了麻烦.我从这里得到这个JS代码JavaScript中几年,几个月,几天的两个日期之间的差异
这几个月工作正常,但当我试着打电话给它似乎没有正常工作的时候,它会显示30天应该是24岁.任何人都可以看到代码有什么问题吗?
function monthDiff(d1, d2) {
var months;
months = (d2.getFullYear() - d1.getFullYear()) * 12;
months -= d1.getMonth() + 1;
months += d2.getMonth();
return months <= 0 ? 0 : months;
}
function daysInMonth(date) {
return new Date(date.getYear(), date.getMonth() + 1, 0).getDate();
}
function diffDate(date1, date2) {
if (date2 && date2.getTime() && !isNaN(date2.getTime())) {
var months = monthDiff(d1, d2);
var days = 0;
if (date1.getUTCDate() >= date2.getUTCDate()) {
days = date1.getUTCDate() - date2.getUTCDate();
}
else {
months--;
days = …Run Code Online (Sandbox Code Playgroud) 好吧,我在这里找到了很多类似的问题,试图获得年,月,日两个日期之间的差异......但没有完成我要求的答案.
所以我写了一些东西来计算,似乎工作,但也许一些专家在这里可以纠正或帮助使这更简单.