Рассчитайте разницу в днях между датой, полученной из API, и сегодняшним днем - PullRequest
0 голосов
/ 06 октября 2019

В настоящее время я пытаюсь выяснить, как вычислить разницу в днях между датой, полученной из API, и сегодняшней датой.

- это код, который я использовал для получения текущей даты в формате, которыйдата совпадений из API:

var today = new Date();
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
var yyyy = today.getFullYear();

today = dd + '/' + mm + '/' + yyyy;

Этот код ветки перетаскивает дату API через

{{ job.date }}

. Мне нужно потрудиться, чтобы с этим бороться и бороться, это

today - {{ job.date }} = Difference in Days

Я просмотрел статьи здесь, но я изо всех сил пытался найти ту, которая мне понятна.

Можно ли это сделать с помощью ветки?

Любая помощь будет признательна и дажетем более, если бы кто-то мог собрать фрагмент для меня.

Ответы [ 3 ]

1 голос
/ 07 октября 2019

jQuery подход с помощью этой записи

//split
var todayArr = ('11/03/2019').split('/');
var startDateArr = ('10/03/2019').split('/');

//change format
var today = `${todayArr[2]}-${todayArr[1]}-${todayArr[0]}`
var startDate = `${startDateArr[2]}-${startDateArr[1]}-${startDateArr[0]}`

//calculate
var diff = new Date(Date.parse(today) - Date.parse(startDate));
var days = diff/1000/60/60/24;

console.log(days);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
0 голосов
/ 06 октября 2019

Если ваша дата от api "06/10/18" в формате "дд / мм / гг", то

let date = "06/10/18";
let values = date.split("/");
date = new Date("20"+values[2],values[1]-1,values[0]);//months are from  0 to 11
let currDate = new Date();
let diff = currDate.getTime() - date.getTime();
diff = diff/1000; // seconds
diff = diff/60; // minutes
diff = diff/60; // hours
diff = diff/24; //days

let days = Math.round(diff);
0 голосов
/ 06 октября 2019

Вы можете сделать что-то вроде этого ......

function countDays(firstDate, secondDate) {

    var startDay = new Date(firstDate);
    var endDay = new Date(secondDate);
    var millisecondsPerDay = 1000 * 60 * 60 * 24;

    var millisBetween = startDay.getTime() - endDay.getTime();
    var days = millisBetween / millisecondsPerDay;

    // Round down.
    alert(Math.floor(days));

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...