Выражение, описывающее цепочку вложенных друг в друга объектов, называется путем. Иногда путь бывает очень длинным:
obj ectOuter.obj ectInner.obj ectInnerlnner.prop = 10;
Как и в случае массива, мы можем присваивать ссылку на экземпляр объекта другой переменной:
obj 2 = obj;
Чтобы удалить ненужный экземпляр, следует использовать оператор delete :
delete <���Переменная, содержащая ссылку на экземпляр объекта >;
Например,
delete obj, obj 2;
Внимание!
Закончив работу с экземпляром какого-либо объекта, всегда удаляйте его. Помните, что каждый экземпляр расходует ресурсы компьютера, которых всегда не хватает.
Оператор 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 представляет собой обычную строку. Пользуясь его свойствами и методами, можно выполнять различные манипуляции над строками.
Создать экземпляр объекта String можно одним из двух способов, как показано в следующих примерах:
var s = new String("Flash");
var s = "Flash";
Как правило, чаще используется второй способ — он и компактнее в записи, и привычнее.
Читать дальше
Конец ознакомительного отрывка
Купить книгу