我有来自日期选择器的日期,我访问的是 -
var transdate = $j("input[name='enterdate']").val();
导致 transdate = "6/22/2015"
我需要测试输入的日期是否在定义为的两个日期之间
startdate = '2015-02-01'
和 enddate = '2015-07-30'
如何在以下代码中将转换日期转换为 yyyy-mm-dd 格式 -
if ((new Date('transdate')>= startdate ) && (new Date('transdate') <= enddate )) {
alert("correct date entered");
}
最佳答案
Moment.js是一个小型方便的日期库,可以让这一切变得简单。
moment('6/22/2015', 'M/D/YYYY')
.isBetween('2015-02-01', '2015-07-30'); // => true
请注意,只有第一个(美国格式)日期字符串需要提供明确的格式字符串。
Moment 可以单独用于解析,例如。即使不使用 isBetween
:
var transdate = moment('6/22/2015', 'M/D/YYYY').toDate();
var startdate = moment('2015-02-01').toDate();
var enddate = moment('2015-07-30').toDate();
transdate >= startdate && transdate <= enddate // => true
关于Javascript - 将字符串转换为日期并比较日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31256564/