Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.07.2014, 14:14
ivent вне форума Посмотреть профиль Отправить личное сообщение для ivent Найти все сообщения от ivent
  № 1  
Ответить с цитированием
ivent

Регистрация: Apr 2013
Сообщений: 24
По умолчанию Как найти разницу между двумя датами?

Есть текущая дата и дата завершения постройки объекта, как определить через сколько часов, минут и секунд текущая дата будет равна дате завершения постройки объекта?
Код AS3:
         /*
          * currentdate - дата создания объекта
          * newdate - дата завершения строительства
          * lastdate - текущая дата
         */
         var currentdate:Date = new Date(ctime * 1000)
         var newdate:Date = DateUtilities.addTo(currentdate, 0, 0, 0, h, m, 0, 0)
         var lastdate:Date = new Date(Param.Lastdate * 1000 )
         var elapsed:Date = new Date( newdate.time - lastdate.time )
         var pDate:Array = [elapsed.hoursUTC, elapsed.minutesUTC, elapsed.secondsUTC]
         return pDate
Пробовал так, но значения даты получаются cовсем другими ( добавляю 30 минут, результат 9 часов )

Старый 09.07.2014, 15:11
Rzer вне форума Посмотреть профиль Отправить личное сообщение для Rzer Посетить домашнюю страницу Rzer Найти все сообщения от Rzer
  № 2  
Ответить с цитированием
Rzer
 
Аватар для Rzer

блогер
Регистрация: Feb 2007
Адрес: Spb
Сообщений: 613
Записей в блоге: 8
Отправить сообщение для Rzer с помощью ICQ
Код AS3:
public static function convertSeconds(val:int):String {
 
			var seconds:int = Math.floor(val);
			var minutes:int = Math.floor(seconds / 60);
			var hours:int = Math.floor(minutes / 60);
			var days:int = Math.floor(hours / 24);
 
			seconds %= 60;
			minutes %= 60;
			hours %= 24;
			//days %= 100;
 
			var time:String;
 
			if (days > 0) {
				time = days + " дн. " + hours + " ч.";
			}else if (hours > 0) {
				time = hours + " ч. " + minutes + " мин.";
			}else if (minutes > 0){
				time = minutes + " мин. " + seconds + " сек.";
			}else {
				time = seconds + " сек.";
			}
 
			return time;
		}

Создать новую тему Ответ Часовой пояс GMT +4, время: 04:56.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 04:56.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.