Задать вопрос
gordon_shamway
@gordon_shamway

Есть две переменные dateStart и dateEnd как можно рассчитать сколько осталось времени до конца?

Есть две переменные dateStart и dateEnd как можно рассчитать сколько осталось времени до конца и обновлять в реальном времени?
app.controller('remaingCtrl', ['$scope','$timeout', function($scope,$timeout){
	  	
    $scope.dateCreated = new Date()
    $scope.end = new Date("November 20, 2016 22:00:00");
    $scope.dateStart = $scope.dateCreated.getTime()
    $scope.dateEnd = $scope.end.getTime()
    // как рассчитать сколько времени осталось до завершения?
	  }])
  • Вопрос задан
  • 126 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 2
NeiroNx
@NeiroNx
Программист
Дата это количество миллисекунд с 1970 года, можно просто найти их разность и перевести в секунды, часы, минуты, дни оставшиеся до этой даты.
totalsec  = Math.floor(Math.abs($scope.end - $scope.dateCreated)/1000);
secs = totalsec%60;
mins = Math.floor(totalsec/60)%60;
hours = Math.floor(totalsec/3600)%24;
days = Math.floor(totalsec/86400);
Ответ написан
Комментировать
VoidVolker
@VoidVolker
Dark side eye. А у нас печеньки! А у вас?
Для работы со временем есть momentjs.com. В данном случае следует использовать функцию Difference.

$scope.dateCreated = new moment();
$scope.end = new moment("20.11.2016 22:00:00", "DD-MM-YYYY HH:mm:ss");
$scope.diff = $scope.end.diff( $scope.dateCreated );
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы