比较Angular 6中的两个日期

时间:2019-01-01 14:50:46

标签: angular typescript angular6

我是角度6的新手,在这里我需要与日期输入进行比较并找到最大的输入。

input 1 : 2018-12-29T00:00:00
input 2 : Mon Dec 31 2018 00:00:00 GMT+0530 (India Standard Time)

在这里,我从mssql数据库中收到了输入1 ,从物料datepicker中收到了输入2

在比较这两个日期时,我错了。

console.log(mMagazineObject.From < mMagazineObject.To ? true : false);

是否有可能比较这两种日期格式。如果可以,请帮助我解决此问题。

4 个答案:

答案 0 :(得分:1)

您可以使用getTime

if (input1Date.getTime() < input2Date.getTime()) 

请注意,如果您的日期为字符串格式,则首先需要将其解析为日期

答案 1 :(得分:1)

Angular具有内置的formatDate方法,因此您可以使用它来格式化日期,也可以像下面的代码一样对它进行比较:

在您的component.ts文件中:

   date1 = formatDate(new Date(),'yyyy-MM-dd','en_US');
   date2 = let FToday = formatDate(datecomingfromdb,'yyyy-MM-dd','en_US');

   if(date1>date2){
     console.log('---date1 is greater----');
    }else{
     console.log('---date2 is greater-----');
    }

希望这会有所帮助,您可以在Angular文档here

中阅读更多内容

答案 2 :(得分:0)

最后我找到了解决方法。

console.log(mMagazineObject.From < this.datePipe.transform(mMagazineObject.To, 'yyyy-MM-dd') ? true : false);

答案 3 :(得分:0)

如果API发生更改,最好使用Date.parse(input)。这提供了时间戳和数字,您可以轻松地将它们与数学比较进行比较。