Просмотр полной версии : 6 переменных из 3-х значений времени (Date)
Котяра2006
26.02.2013, 14:42
Всем привет!
Подскажите пожалуйста как получить 6 переменных из 3-х значений времени — часов, минут и секунд.
Например, имеем время 23:05:44. Требуется получить 6 переменных вида:
p1=2
p2=3
p3=0
p4=5
p5=4
p6=4
Ну время само получаем через класс Date.
time = new Date();
var sec = time.getSeconds();
var min = time.getMinutes();
var hor = time.getHours();
Спасибо всем за ответы!
iflamberg
26.02.2013, 15:04
//var s:Number =new Date().seconds; //ой, это для as3
var s:Number =new Date().getSeconds();
trace (s);
trace (int(s/10));
trace (s%10);
Котяра2006
26.02.2013, 15:15
да-да, требуется для as2)
Если есть строка "23:05:44", то можно как-то так:
var time:String = "23:05:44";
var timeNumbersArray:Array = time.split(":").join("").split("");
trace(timeNumbersArray)
Если предыдущий пример, что "int" замените на Math.floor.
iflamberg
26.02.2013, 15:52
Там могут быть только положительные числа, int вполне катит.
iflamberg, ветка про as2. Либо я туплю, и в ас2 есть int.
iflamberg, ветка про as2. Либо я туплю, и в ас2 есть int.
В as2 это не тип данных, это функция округления. Но с флеш 5 вместо нее рекомендуется использовать Math.round().
iNils, хорошенько я деприкэйтед штуки с пятого флэша подзабыл.)
Котяра2006, вот вариант, вероятно, который вам нужен:
var time = new Date();
var sec = prepareToString(time.getSeconds());
var min = prepareToString(time.getMinutes());
var hor = prepareToString(time.getHours());
function prepareToString(someValue) {
if (someValue < 10) {
someValue = "0" + someValue
}
return someValue.toString();
}
var allTime:String = sec + min + hor;
var timeNumbersArray:Array = allTime.split("")
trace(timeNumbersArray)
Котяра2006
26.02.2013, 16:50
Hauts, огромнейшее спасибо :)
И всем кто принял участие тоже конечно)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.