При написанні практично будь-якої програми нам доводиться працювати з групами пов'язаних один з одним даних. В процесі роботи часто виникає необхідність зробити сортування цих даних, перекроїти їх самим непередбачуваним чином. Використовуючи масиви, можна побудувати роботу програми на більш ефективному рівні. Масиви найбільш корисні об'єкти ActionScript і саме їм буде присвячена ця лекція.
об'єкт Array
Для того щоб створити новий екземпляр об'єкта Array, необхідно використовувати конструктор new Array ().
У цьому прикладі був створений масив, що складається з трьох елементів. Однак жоден з елементів масиву поки не пов'язаний з конкретним значенням, масив не заповнений!
У цьому прикладі масив був заповнений в процесі його освіти. Зверніть увагу, що мова ActionScript досить гнучкий у відношенні масивів, на відміну від інших мов, в яких встановлені дуже жорсткі правила ініціалізації, згідно з якими потрібно вказати конкретне число елементів масиву і тип даних для зберігаються в масиві значень. В ActionScript кількість елементів масиву може бути збільшено в міру необхідності. Крім того, масив може бути заповнений елементами, що відносяться до різних типів даних: рядок ( "zero"), число (1), булево (true).
Для читання і запису елементів масиву служить оператор [] (квадратні дужки). У квадратних дужках вказується індекс елемента, який може бути створений і записаний, а може бути змінений.
Отже, створений масив з трьох елементів і кожному елементу масиву присвоєно значення. Всі три елементи - рядки.
Для роботи з елементами масиву можуть бути використані вже знайомі вам команди: for, if ... Зокрема цикл for істотно спрощує звернення до елементів масиву.
В ActionScript існує кілька типів масивів: одномірні, багатовимірні, паралельні, асоціативні масиви. Потреба в використанні того чи іншого типу в процесі програмування визначається їх функціональними можливостями і залежить від сценарію вашого ролика.
Далеко в ліс ми з вами, звичайно, ходити не будемо, масиви, з якими ми будемо знайомитися в рамках роботи четвертого курсу, і з якими ми трохи познайомилися, в прикладах цієї лекції називаються одновимірними. Одномірні масиви можна уявити собі у вигляді одиночних стовпців індексованих даних. Для того щоб мати можливість оперувати даними масиву, нам необхідно познайомитися з властивостями і методами об'єкта Array.
Властивість у цього об'єкта тільки одне, але воно дуже важливе і корисне. Це довжина масиву - length. Властивість приймає ціле значення, яка дорівнює кількості елементів масиву, яке може змінюватися разом з кількістю елементів масиву. Доступ до властивості можна здійснити, використовуючи, оператор. (крапка). наприклад,
Хотілося б підкреслити одну дуже важливу деталь, не дивлячись на те, що масиви в ActionScript аж ніяк не повинні бути безперервними (тобто в повному обсязі елементи можуть бути визначені), довжина масиву завжди на одиницю більше індексу останнього елемента!
Деякі методи об'єкта Array
concat ()
Метод concat () призначений для створення нового масиву. Елементами цього нового масиву виявляються елементи того масиву, з якого даний метод викликається, а елементи, що приєднуються до масиву, вказуються у вигляді параметрів.
Метод дозволяє об'єднати два масиви, а, може бути, і три, і чотири в один масив, вказавши імена об'єднуються масивів у вигляді параметрів (якщо масивів кілька, їх імена вказуються через кому).
join ()
Метод join () об'єднує всі елементи масиву в рядок. Якщо параметри методу не вказані, то за замовчуванням як роздільник для елементів масиву в створеній рядку використовується кома.
У тому випадку, якщо в якості параметра вказано якийсь символ, то він буде використаний як роздільник в сформованої з масиву рядку.
pop ()
Метод pop () дозволяє видалити останній елемент масиву і повертає його значення. Параметрів у цього методу немає, тому що здатний він тільки на видалення останнього елемента і все.
push ()
Метод push () дозволяє додати один або кілька елементів в кінець масиву і повертає довжину видозміненого масиву. На відміну від методу concat (), при використанні якого відбувається створення нового масиву, метод push () виробляє лише видозміна вже існуючого масиву.
Всі приклади, представлені в матеріалі цієї лекції, я дуже раджу апробувати в Macromedia Flash. Перед вами ролик, в якому зібрана перша частина прикладів, які демонструють роботу методів об'єкта Array, розглянутих вище.
Для організації роботи ролика використані два шари і один кадр.
Кадру пропишіть скрипт:
Кнопці «заповнити поля» пропишіть скрипт:
Продовжуємо розмову. Познайомимося ще з деякими методами об'єкта Array
reverse ()
Метод reverse () дозволяє вивернути масив навиворіт, іншими словами переупорядочівать вихідний масив, розміщуючи останній його елемент на місце першого, передостанній - на місце другого ...
shift ()
Метод shift () дозволяє видалити перший елемент масиву, повертає його значення і зрушує інші елементи вліво на одну позицію. Параметрів у цього методу немає, тому що здатний він тільки на видалення першого елемента і все. Дуже схоже на роботу методу pop ().
slice ()
Метод slice () призначений для створення нового масиву, що містить частину елементів вихідного масиву. Він не робить ніякого впливу на вихідний масив. Новий масив формується з елементів вихідного за принципом вирізки від ... (перший параметр методу - індекс елемента вихідного масиву) і до ... (другий параметр методу - індекс елемента вихідного масиву).
Наявність першого параметра обов'язково, а ось другий параметр методу можна упустити, в цьому випадку програма використовує останній індекс масиву.
splice ()
Метод splice () дозволяє видозмінити існуючий масив трьома способами:
- видалити один або кілька елементів в будь-якому діапазоні масиву;
- замінити елементи масиву в обраному вами діапазоні;
- ввести нові елементи в існуючий масив.
У цього методу два обов'язкових параметра: початковий індекс і число видаляються елементів. Крім того, можна вказати будь-яке число елементів, які потрібно ввести в масив.
Видалення елементів: Заміна елементів: Додавання елементів:
Зверніть увагу, що при додаванні елементів в масив другий параметр методу дорівнює нулю!
unshift ()
Метод unshift () дозволяє вставити кілька елементів в початок масиву, зрушує вправо інші його елементи і повертає довжину оновленого масиву.
Перед вами ролик, в якому зібрана друга частина прикладів, які демонструють роботу методів об'єкта Array. Його роботу запрограмуйте, будь ласка, самостійно.
Домашнє завдання: Основи програмування в Macromedia Flash MX
Продублюйте ролики, представлені в цій лекції. Виконане завдання подайте у вигляді файлу в форматі fla (якщо розмір файлу перевищить 150 Кб, будь ласка, упакуйте файл в архів) і вишліть вчителю.
Бажаю Вам успіхів у самостійному вивченні Macromedia Flash MX!