0

我在 Angular JS 中有一个应用程序,在一个屏幕上,有 2 个日期选择器,并且验证 FirstDate 不能在 SecondDate 之后。

测试用例:

FirstDate: '10/01/2014'
SecondDate: '04/01/2015'

健康)状况:

if( $filter('date')(FirstDate) > $filter('date')(SecondDate) )
  alert(FirstDate)
else
  alert(SecondDate)

期望的输出:

"SecondDate"

输出:

"FirstDate"

你能帮忙看看是什么问题吗?我的猜测是,它没有考虑日期,而是将它们视为字符串。

4

1 回答 1

1

$filter('date') 使用日期对象并将其转换为字符串。因此,在您的情况下,您宁愿在比较之前将字符串转换为日期对象

if( Date.parse(FirstDate) > Date.parse(SecondDate) )
  alert(FirstDate);
else
  alert(SecondDate);
于 2014-08-14T10:01:37.987 回答