birthdate < new Date().setFullYear(new Date().getFullYear() - 50);
使用示例:
let testDates = [
new Date(1970,0,1), // 1 Jan 1970
new Date(2000,0,1) // 1 Jan 2000
].forEach(date => console.log(
`More than 50 years ago?\n` +
`${date.toDateString()}: ${date < new Date().setFullYear(new Date().getFullYear() - 50)}`
));
4条答案
按热度按时间hof1towb1#
所以你得先计算50年的回溯日期https://momentjs.com/docs/#/manipulating/subtract/
获取用户选定日期
从该对象创建时刻对象并查询https://momentjs.com/docs/#/query/is-after/
这将返回
boolean
,您可以使用它来显示错误消息。dced5bon2#
你要计算从现在到生日的
difference
,并检查它是否大于50。如果要以十进制得到年数的差值:
yearsDiff
将包含差值,因此您可以对它执行if
检查,以查看它是否大于50。官方文档:https://momentjs.com/docs/#/displaying/difference/
polkgigr3#
通过使用moment js,你可以很容易地得到过去和未来的日期,就像这样-
终于
引用站点URL为-https://everyday.codes/javascript/how-to-format-date-in-javascript-with-moment-js/
bqjvbblv4#
如果没有moment.js,您可以测试出生日期是否小于今天减去50年:
使用示例:
唯一需要检查的行为是2月29日左右。一些地方在非闰年将生日改为2月28日,其他地方则改为3月1日。