Создание объекта ActionScript 3

На этом уроке ActionScript мы рассмотрим один вопрос:

  1. Создание объекта ActionScript 3

Очень часто, на практике, сложные структуры данных Вы будете записывать в виде массива ActionScript или многомерного массива (ActionScript Array). Однако простой массив не позволит Вам создать логическую связь между значением элемента и его индексом. В зависимости от задачи и характера данных этого может быть вполне достаточно, но в других ситуациях – может вызвать проблемы.

Например, Вы разрабатываете игру и Вам нужно связать между собой имя игрока, его очки и текущий уровень игры, который он проходит. Вы можете сохранить все эти данные в простом массиве ActionScript, но тогда Вам необходимо будет запомнить то, что имя игрока Вы поместили в первый элемент, очки во второй и т.д. Этот пример достаточно прост и легко выполним. Но представьте себе, что у Вас имеются сотни различных данных! Тогда будет просто невозможно запомнить какие данные хранятся в том или ином элементе массива.

В ситуациях, когда Вам обязательно нужно создать логическую ассоциацию между элементом массива и его значением нужно использовать объект ActionScript 3. Также как и простой массив объект ActionScript 3 позволит Вам сохранять множество элементов в одном объекте. Но он также позволит Вам создавать имена для элементов, называемые свойствами (property) и связывать их со значениями (value), которые в этих элементах хранятся.

Создание нового объекта ActionScript происходит по тому же сценарию, что и массива. Единственная разница состоит в том, что в объекте ActionScript  Вы будете создавать пары «свойство-значение», ставя точку “.” после имени объекта, затем имя (свойство) элемента, после этого знак “равно” и затем записываете значение элемента.

Создание объекта ActionScript 3

Наберите ключевое слово var и затем, через пробел, имя объекта ActionScript 3.

Поставьте двоеточие, затем тип данных Object и поставьте знак “равно”.

Наберите new Object();

Объект ActionScript

Введите имя объекта ActionScript 3, которое Вы задали в первом шаге.

Поставьте точку и введите имя свойства.

Поставьте знак равенства и введите значение.

Свойства объекта ActionScript

Повторите последние действия несколько раз для добавления элементов в объект.

Создание ActionScript объекта

Вы создали объект (Object).

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

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

Для объекта ActionScript 3 запись будет такой:

Создание объекта ActionScript 3: 18 комментариев

  1. Ваши уроки для совсем новичков, вовсе незнакомых с программированием. Целый урок тратится на то, что объясняется в несколько строчек + пример кода. Я давно знаком с Java. Сейчас занимаюсь программированием на Android. По техническим причинам сейчас программировать на Android не могу. Для себя решил, что флеш игры доминируют над апплетами, ибо у всех есть флеш плеер, а вот виртуальная машина Java далеко не у каждого, да и распространение флеш игр куда легче. И хотелось бы быстро освоиться и начать кодить на новом языке. Почитал книгу – ни одного практического совета. 200 страниц нужно прочитать, чтобы впервые скомпиллировать приложение. Вот и приходится сидеть в интернете, искать стоящие уроки по геймдеву. Вот вам сайт http://www.kilobolt.com/ . Там отличный курс от новичка в программировании и Эклипсе до начинающего геймдевелоппера. Вам есть чему поучится у него. Уроки более полные и меньше глупой информации типо вашего “поставьте знак равенства”. Извините за излишнюю прямоту.

    1. Николай, спасибо за комментарий. Есть над чем подумать. Однако при создании своих уроков я тоже ориентировался на определенные источники информации. Подобный стиль выбран не случайно, потому что мои уроки, как Вы правильно заметили, для “совсем новичков”. Вы как опытный Java-программист можете легко освоить другой язык, потому что уже хорошо знаете и понимаете принципы программирования. Новичкам же нужно все “разжевывать” (к сожалению). Ну и по статистике, примерно, на 1 отзыв, подобный Вашему, приходится 50 позитивных. Словом, мои уроки для “чайников” (в хорошем смысле этого слова). А Вы можете легко найти в интернете и другие источники, больше подходящие Вам. Успехов!

      1. Полностью согласен с Валерой. Вы хорошо объясняете! Продолжайте в том же духе, в тексте нет воды, интересно читается. Ждем новых БЕСПЛАТНЫХ уроков!

        1. Для абсолютных новичков то, что надо. Я знаком с основами javascript и считаю, то что уделяется большое внимание синтаксису – замечательно. Нахожу это полезным для себя, ведь принципы те же, а синтаксис отличается. Новички очень часто делают синтаксические ошибки.

          1. Это и хорошо, все детально разжевано. И верно это для Новичков. Которые хотят понять все прелести AS3. Мало кто будет просветвлять Нубов,зная что сам автор потерял кучу своего времени, и делится навыками подробно и понятно.(Еcть же ханжы типо Я много времени обучался программированию , и не буду рассказывать все тайны,скорее запутаю,чтобы быть самым умным и другим говорить, фу тупые!! 😀 ) Валерий Медведев, спасибо за труды,они несут пользу!

          2. меньше глупой информации типо вашего “поставьте знак равенства”.Извините за излишнюю прямоту. —- Здесь могу сказать одно, Автор Валерий Медведев, делает такие сообщения для того, чтобы новичок программист Писал код самостоятельно не копируя с сайта,тем самым он запоминает что пишет и практикуется.

  2. А мне очень нравится, что всё так подробно, когда начинаешь совсем с нуля, это то, что надо.”Уроки для совсем новичков, вовсе не знакомых с программированием” нужны не меньше, чем и “давно знакомым с Java”(это о Николае). Так что спасибо за уроки, из всех, что я встречала, это , пожалуй, первые, где всё методично, подробно и понятно. Да ещё бесплатно.

  3. var picture:Object = new Object(); picture.artist = “Иванов”; picture.name = “Ива”; picture.year = 1971; Объясните, пожалуйста, почему год не в кавычках и trace(picture.year); показывает без ошибок у вас на сайте отличное юзабилити!!!

    1. Алексей, в этом примере год не заключался в кавычки умышленно (хотя и мог бы), чтобы показать, что свойствами объекта могут быть данные различных типов — в данном случае 1971 — это число, остальные два свойства “Иванов” и “Ива” строки. Одним словом, это просто пример.

  4. Объясните, как правильно обращаться к свойствам объекта. var point = new Object(); point.x = stagePoint.x; point.y = stagePoint.y; point.name = “Точка”; var circle = new Object(); circle.x = stageCircle.x; circle.y = stageCircle.y; circle.radius = stageCircle.width / 2; circle.hp = 50; stage.addEventListener(Event.ENTER_FRAME, fun2); function fun2(e:Event){ stagePoint.x = mouseX; stagePoint.y = mouseY; } function fun (c1,p1){ var xdiff = c1.x-p1.x; var ydiff = c1.y-p1.y; var dis = Math.sqrt(xdiff * xdiff+ ydiff * ydiff); if (dis<=circle.radius) trace(“столкнулись”); } fun (circle,point); Такой код почему-то не работает

  5. Хотелось бы еще узнать о том, как создать объект, в котором есть не просто массив свойств-значений, а свойство-массив. К примеру, у актера Иванова есть десять фильмов. Как в объекте picture указать, что picture.Films – array (“Тополь”, “О любви”, “Трансформеры”). И потом использовать как-то на подобие var FavoriteFilm = picture.Films[2] (“О любви”). И как создать массив созданных объектов? К примеру var Artists:Array = Array () …. of picture, да, как-то тут указать тип массива. Кстати попутный вопрос как указать явно тип массива, если элементы массива – объекты…

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

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