The left -hand and right hand side of an arithmeti

2020-05-30 03:53发布

问题:

I am getting the following error. I am not able to find out where exactly i went wrong.Can someone help me out with the solution

The code

 function() {
    this.devices.forEach(device => {
      let lastConnect = device.lastConnection.split('+');
      lastConnect = lastConnect[0] + 'Z';
      let diff = Math.abs(new Date() - new Date(lastConnect));//getting error here
}

回答1:

I have found out the issue.

This code work only in Javascript

Math.abs(new Date() - new Date(lastConnect)) .

Inorder to make it work in Typescript. Update the code as shown below

Math.abs(Date().getTime() - new Date(lastConnect).getTime());


回答2:

The simplest answer would be

Math.abs(<any>new Date() - <any>new Date(lastConnect));


回答3:

Another great way:

Math.abs((new Date() as any) - (new Date(lastConnect) as any));



回答4:

No need for Math.abs() to answer this question...

Just using getTime() method converts a Date into a number (Date.prototype.getTime()) so you can make the operation without that error

Check on this example