Macromedia Flash Professional 8. Графика и анимация
Шрифт:
Оператор typeof возвращает для экземпляра объекта строку "object". Это значит, что экземпляр объекта имеет объектный тип данных.
Очень часто Flash сам создает экземпляры каких-либо объектов и сам же их удаляет. В частности, именно так происходит с экземплярами объекта Movieclip, т. е. клипами.
Несколько новых операторов и ключевых слов
А
Оператор instanceof проверяет, является ли экземпляр экземпляром заданного объекта, и возвращает соответственно значение true или false. Формат его записи такой:
<Переменная> = <Экземпляр объекта> instanceof <Объект>;
В приведенном ниже примере экземпляр задается в виде переменной, содержащей ссылку на него, а объект — в виде имени объекта.
if (obj instanceof someObject).
Ключевые слова for и in служат для организации так называемого цикла просмотра, позволяющего просмотреть все свойства экземпляра объекта. Он также называется "циклом for-in" и имеет следующий формат записи:
for (<Переменная-ссылка на свойство> in <Экземпляр объекта>)
<Тело цикла>
Переменная-ссылка на свойство каждый раз получает значение очередного свойства экземпляра. Эту переменную можно использовать для получения доступа к найденному свойству.
for (k in obj) {
k = ' ' + k + ' ';
}
Приведенный фрагмент сценария просматривает все свойства экземпляра obj и добавляет к значению каждого из них пробелы слева и справа. (Предполагается, что значения всех свойств этого экземпляра имеют строковый тип.)
Ключевое слово with позволяет значительно сократить длину выражений ActionScript, если в них используются свойства или методы какого-либо одного экземпляра объекта. Рассмотрим его применение на примере.
Напишем несколько выражений, обращающихся к свойствам и методам экземпляра какого-либо объекта:
someObject.propl = 1;
someObject.prop2 = 2;
someObj ect.prop3 = 3;
someObj ect.method1;
Какие длинные строки у этих выражений! А теперь перепишем их, использовав ключевое слово with:
with (someObject){
propl = 1;
prop2 = 2;
prop3 = 3;
methodl;
}
Сценарий
Встроенные объекты ActionScript
Встроенными называются объекты, реализованные в самом языке ActionScript. В этом разделе будут рассмотрены их краткие описания и даны примеры использования. Полное описание всех этих объектов можно найти в интерактивной справке Flash.
Интересной особенностью языка ActionScript является то, что он может представлять обычные типы данных — строковый, числовой, логический — как объекты. Поэтому со строками, числами и логическими величинами можно обращаться как с экземплярами соответствующих объектов, вызывать их методы и использовать их свойства. Львиная доля встроенных объектов ActionScript как раз и "отвечает" за объектное представление обычных типов данных.
Объект String представляет собой обычную строку. Пользуясь его свойствами и методами, можно выполнять различные манипуляции над строками.
Создать экземпляр объекта String можно одним из двух способов, как показано в следующих примерах:
var s = new String("Flash");
var s = "Flash";
Как правило, чаще используется второй способ — он и компактнее в записи, и привычнее.
Свойство length объекта String позволяет получить (или, как говорят программисты, "возвращает") длину строки в символах. Например:
1 = s.length;
Метод сharAt объекта String возвращает символ строки, номер позиции которого в строке был передан в качестве единственного параметра метода:
ch = s.charAt(s.length — 1);
Нумерация символов строки начинается с нуля.
После выполнения выражения из приведенного примера в переменной ch окажется предпоследний символ строки s.
Метод indexof возвращает номер вхождения подстроки в строку. Если подстрока не найдена, возвращается — 1. При этом можно вторым параметром передать в метод номер вхождения, с которого начнется поиск:
<Строка>.indexOf(<Подстрока>, [<Номер вхождения>])
Например:
s = "Macromedia Flash 8";
n = s.indexOf("a", 2);