Javascript/Typescript:比较日期、字符串和时刻变量
我正在比较两个日期变量 无论出于何种原因,从C#API到Javascript,它们有时会转换为1)Javascript/Typescript:比较日期、字符串和时刻变量,javascript,angular,typescript,momentjs,angular10,Javascript,Angular,Typescript,Momentjs,Angular10,我正在比较两个日期变量 无论出于何种原因,从C#API到Javascript,它们有时会转换为1)字符串或2)日期甚至3)时刻,这是由于以前的公司代码 Typescript在下面的界面中声明它们是Date,但在Javascript运行时,它会改变 那么现在,在比较两个日期时,有没有一种简单的方法来简化下面的代码? 将所有内容转换为日期,并执行getTime()比较 export interface Product { productName?: string; recordDat
字符串
或2)日期
甚至3)时刻
,这是由于以前的公司代码
Typescript在下面的界面中声明它们是Date
,但在Javascript运行时,它会改变
那么现在,在比较两个日期时,有没有一种简单的方法来简化下面的代码?
将所有内容转换为日期,并执行getTime()
比较
export interface Product {
productName?: string;
recordDate?: Date;
}
if (product1.recordDate instanceof Date) {
dateVar1 = product1.recordDate;
} else if (typeof product1.recordDate === 'string') || product1.recordDate instanceof String)) {
dateVar1 = new Date(product1.recordDate);
} else if (product1.recordDate instanceof moment) {
dateVar1 = ((product1.recordDate as any) as moment.Moment).toDate();
}
if (product2.recordDate instanceof Date) {
date2Var = product2.recordDate;
} else if (typeof product2.recordDate === 'string') || product2.recordDate instanceof String)) {
date2Var = new Date(product2.recordDate);
} else if (product2.recordDate instanceof moment) {
date2Var = ((product2.recordDate as any) as moment.Moment).toDate();
}
if date1Var.getTime() === date2Var.getTime() {
return true;
} else {
return false;
}
使用角度环境
资源:
您可以使用
力矩
。只需传递字符串
或日期
或时刻
值:
dateVar1=moment(product1.recordDate.toDate();
工作示例
const stringDate=“2020-08-01”//一串
const dateDate=新日期();//日期
const momentDate=力矩();//瞬间
log(矩(stringDate.toDate());
log(矩(dateDate.toDate());
log(moment(momentDate.toDate())代码>
您可以使用力矩
。只需传递字符串
或日期
或时刻
值:
dateVar1=moment(product1.recordDate.toDate();
工作示例
const stringDate=“2020-08-01”//一串
const dateDate=新日期();//日期
const momentDate=力矩();//瞬间
log(矩(stringDate.toDate());
log(矩(dateDate.toDate());
log(moment(momentDate.toDate())代码>