2017-02-10 4 views
0

Мне нужно получить разницу (в минутах) от даты и времени, которые я получаю от запроса get в строковом формате.Сравнение datetime с запросом на получение с текущим временем даты в JavaScript

Согласно моим исследованиям, я могу использовать moment.js для этого, но я не понял сейчас.

Этот формат я получаю дату/время, чтобы сравнить как:

2017-02-10T20: 52: 13.885Z

Я уже пытался сделать некоторые операции с moment.js, таких как

moment().startof(comparedTime).fromNow()) 

Но он ничего не возвращает.

Каковы альтернативы и лучший способ сделать это?

+0

Вы пробовали момент (dataString, dateFormat) .startOf ('minutes'). Fr omNow(); '? – Darlesson

ответ

0

Вам нужно создать моментный объект, передав строку даты в.

myDate = moment(myISOString) 

https://momentjs.com/docs/#/parsing/

Затем вы можете использовать объект момента, как описано в документации.

1

Не можете ли вы просто использовать vanilla javaScript?

var getDate = '2017-02-10T20:52:13.885Z'; //get time from server 
 
var parseDate = new Date(getDate).getTime(); //change string into Date object into milliseconds 
 
var nowDate = Date.now(); //get current Date in milliseconds 
 

 
var minutes = Math.round((nowDate-parseDate)/1000/60); //subtract times, count seconds (/1000), count minutes (/60) 
 

 
console.log(minutes);

0

С Moment.js, это просто:

moment().diff('2017-02-10T20:52:13.885Z', 'minutes') // 65 

Если вы хотите частичный минут включены, а затем передать true в качестве третьего параметра:

moment().diff('2017-02-10T20:52:13.885Z', 'minutes', true) // 65.04565