2017-02-15 23 views
0

Я получаю 2 строки из php, и я пытаюсь получить разницу между тем, используя javascript. это мой код:Получите разницу в день между двумя строками, используя javascript

this.now = Thu Feb 14 2017 16:38:42 GMT-0200 (BRST) this.expiration = Wed Feb 15 2017 15:29:45 GMT-0200 (BRST)

и я хочу, чтобы разница дней между этими двумя датами, чтобы показать что-то вроде "1" day left.

+0

дифф Что такое формат даты Входят? –

+0

не совсем дублирование – havenchyk

+0

@havenchyk, спасибо. Im получает 2 строки в формате даты от внешнего api. и я не знаю, как разделить эти строки, получить день на обоих и сравнить результат, чтобы показать оставшиеся дни ... –

ответ

1

Есть несколько способов сделать это:

1) Можно использовать библиотеку как [date-fns#differenceInDays]

2) Написать простую функцию

const msInDay = 24 * 3600 * 1000 

function diffInDays(startDateString, endDateString) { 
    const start = new Date(startDateString) 
    const end = new Date(endDateString) 

    const ms = end - start 
    const fullDays = Math.round(ms/msInDay) 

    return fullDays 
} 
+0

Он отлично работает, спасибо –

+0

Разбор строк с конструктором Date не рекомендуется, так как это почти полная реализация зависимый. Есть [* много хороших ответов *] (http://stackoverflow.com/questions/542938/how-do-i-get-the-number-of-days-between-two-dates-in-javascript) к этому вопрос уже. – RobG

+0

@Rob хорошо, много ответов содержит даже момент, а не только конструктор даты. Не могли бы вы указать на * хороший ответ *? Должен ли я обновлять ответ с помощью Date.parse? – havenchyk

 Смежные вопросы

  • Нет связанных вопросов^_^