Класс Date AS3. Создание экземпляров

Этот урок ActionScript рассмотрит 2 вопроса:

  1. Создание экземпляров класса Date AS3
  2. Дополнительная информация

Класс Date AS3, подобно классу Math, относится к невизуализируемым. Он служит двум целям:

  • считывать текущую дату и время на компьютере пользователя
  • устанавливать специфические дату и время.

Но класс Date AS3 НЕ статический класс. Вам возможно понадобится один экземпляр для считывания даты и времени, а второй для установки особой даты, поэтому прежде чем использовать класс Date Вам необходимо будет создать его экземпляр (instance). Делается это так:

Класс Date содержит в себе комплект методов для получения дат, т.е. для чтения локальных даты и времени в системе пользователя. Например, чтобы получить полный год нужно написать следующее:

Если Вам нужно установить дату в своем фильме, то Вы просто передаете в конструктор класса Date AS3 новые данные:

Создание экземпляров класса Date AS3

Получение дня недели

Введите в панели Actions

Введите

Текущий день недели будет сохранен в переменной.

Установка своего дня рождения

Введите

Вместо year, month и day поставьте соответственно год, месяц и день своего рождения.

Введите

Наберите

Нажмите Ctrl + Enter.

Flash Player запустит ролик.

Значения переменных отобразятся в окне Output.

Дополнительная информация

Месяцы в классе Date хранятся во внутреннем массиве. К сожалению, индексация элементов массива в ActionScript начинается с 0 (ноль), а не 1 (единица), поэтому порядковый номер для января будет 0, февраля 1 и т.д. Это означает, что Вы должны вводить число месяца «неправильно» – если нужен сентябрь, например, то для него вводите число 8, а не 9 (его действительный порядковый номер в общем списке месяцев). Кроме того, если Вы будете использовать данные полученные от пользователя о его дне рождения, то здесь также нужно вычитать 1 от указанного им месяца. Конечно же, вначале Вы будете немного путаться со всей этой арифметикой, но смею Вас уверить очень скоро освоитесь и дальше проблем особых не будет.

Полный список свойств и методов класса Date AS3 Вы найдете в интернет на сайте, где опубликована официальная документация ActionScript http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Date.html?filter_flash=cs5&filter_flashplayer=10.2&filter_air=2.6. Пользуйтесь прокруткой страницы для того чтобы увидеть все свойства и методы. Кликнув на имени любого из них, Вы перейдете вниз к полному его описанию.

Класс Date AS3. Создание экземпляров: 7 комментариев

  1. Спасибо за урок. Под конец, увидев результат, задался вопросом: а как написать так, чтобы вместо номера месяца было название? Было бы неплохо иметь больше примеров использования кода.

    1. Я так понимаю нужно проверку с циклом делать. Цикл (loop) от 0 до 11 и проверять какая цифра в переменной. И уже по ней присваивать название месяца.

      1. Создаёшь текстовый массив (array): var month:Array = [“января”, “февраля”, и т.д… ]. И при выводе номер месяца подставляешь, как индекс этого массива: month[3] выведет “марта”.

  2. Crys, можно делать так – если например 3 выводить “Среда”, если 5 – выводить “пятница”, а делать ето можно оператором switch! Синтаксис: switch (B) { case L1: S1; case L2: S2; ………… case Ln: Sn; default: S } – где В – выражение; L1,L2,…,Ln – литералы; S1,S2,…,S – операторы.

  3. Здравствуйте. Заметил маленькую ошибку: в части: “trace(weekDay); trace(birthYear);” должно быть: trace(birthDate); trace(birthYear);

  4. Спасибо за урок! Но сейчас в первой части кода, фактически, создаётся пустой объект класса Date, поэтому today.getDay() всегда равняется 0, собственно, поэтому trace(weekDay) тоже всегда выводит 0. Какой в этом тайный смысл? :) Такое ощущение, что либо там должна была быть ещё строчка, присваивающая объекту today значение сегодняшней даты, либо действительно вместо trace(weekDay) должно было быть trace(birthDate), как сказал Хитрый.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *