如何在设置或获取操作之前处理数据?

时间:2018-07-13 11:45:05

标签: javascript angular

我正在使用primeNG日历,并且有一个名为myDate和dateformat的模型。 ngModel指令引用了Date属性。

<p-calendar [(ngModel)]="myDate"  dateFormat="dd/mm/yy"></p-calendar>

但是问题是我想将myDate值存储为Unix Timestamp。所以我需要在设置之前将myDate转换为毫秒,然后将其转换为具有dateformat的date对象。有什么办法吗?

private myDate;

setMyDate(myNewDate){
    this.myDate = convertDateToTimestamp(myNewDate)
}

getMyDate(){
   return convertTimestampToDate(this.myDate)
}

2 个答案:

答案 0 :(得分:0)

您可以在此日期对象上调用getTime()以Unix形式获取它。它以毫秒为单位。

new Date("2013/09/05 15:34:00").getTime();

它可能有十进制位,因此将其包装在Math.round中会清除它。

Math.round(new Date("2013/09/05 15:34:00").getTime());

https://github.com/cztomczak/cefpython/issues/244

答案 1 :(得分:0)

您可以使用getter和setter来实现这一点,这实际上与您已经拥有的非常接近:

private _myDate;

set myDate(myNewDate){
    this._myDate = convertDateToTimestamp(myNewDate)
}

get myDate(){
   return convertTimestampToDate(this._myDate)
}