with - Выполняет некоторый код в конце указанного объекта
with - Выполняет некоторый код в конце указанного объекта
with
Предоставляет сокращенный способ обращения к свойствам объекта.
Синтаксис:
with (object) { statements;}
Аргументы:
Описание:
Если обращение к свойству происходит в блоке предложений with, проверяется наличие этого свойства у объекта object. Если у object существует указанное свойство, то оно и используется для разрешения ссылки на свойство. Если у object нет такого свойства, оно ищется в текущей временной диаграмме или функции.
Примеры:
Следующий пример демонстрирует разницу между выполнением предложения внутри with и вне with:
PI = 10; // Задать переменную временной диаграммы, PIwith (Math) { // Выполнить предложения в контексте Math trace("pi is: " + PI); // Выводит: 3.1459 (PI - свойство Math)}trace("pi is: " + PI); // Выводит: 10 (Обращение к Math больше нет)
Помимо предоставления удобного доступа к свойствам объекта, with может использоваться для вызова методов объекта:
x = 10;y = 11;with (Math) { larget = max(x, y);}trace(larget); // Выводит: 11
Нельзя определять новое свойство объекта, являющегося целью предложения with. Обратите внимание в предыдущем примере на то, что переменная larget не определена в объекте Math, поэтому ссылка на свойство воздействует на временную диаграмму или функцию, содержащую предложение with.
Следующий код показывает неверную попытку присвоить переменной значение myClip:
with (myClip) { var x = 10; // значение x задается в текущей временной диаграмме, // а не в myClip}
Можно, однако, с полным правом использовать with для воздействия на экземпляры клипов другими способами. Это предложение предоставляет удобный способ работы с глубоко вложенными структурами экземпляров.
Например, следующий код:
_root.form.userProfile.userID = "34R56";_root.form.userProfile.gotoAndPlay("guestionnaire");
можно заменить таким:
with (_root.form.userProfile) { userID = "34R56"; gotoAndPlay("guestionnaire");}
Но with не является единственным способом обеспечения такого удобства. Можно просто присвоить наш экземпляр переменной и использовать эту переменную в ссылках:
var userForm = _root.form.userProfile;userForm.userID = "34R56";userForm.gotoAndPlay("guestionnaire");
Следующий пример устанавливает свойства x и y экземпляра someOtherMovieClip и затем командует ему перейти на третий кадр и остановиться:
with (someOtherMovieClip) {_x = 50;_y = 100;gotoAndStop(3);}
Следующий отрывок кода показывает, как можно написать предшествующий пример без использования команды with:
someOtherMovieClip._x = 50;someOtherMovieClip._y = 100;someOtherMovieClip.gotoAndStop(3);
Этот код также можно написать с использованием команды tellTarget:
tellTarget ("someOtherMovieClip") { _x = 50; _y = 100; gotoAndStop(3);}
Использование команды with полезно для одновременного вызова многих элементов в контекстном листе. В следующем примере встроенный объект Math помещен в начало объектной области (контекста). Установка Math, как объекта по умолчанию, приводит идентификаторы cos, sin и PI к Math.cos, Math.sin и Math.PI соответственно. Идентификаторы a, x, y и r - не методы или свойства объекта Math, но так как они существуют в объектной области (контексте) функции polar, они приводятся к к соответствующим локальным переменным.
function polar(r){var a, x, ywith (Math) {a = PI * r * rx = r * cos(PI) y = r * sin(PI/2)}trace("area = " +a)trace("x = " + x)trace("y = " + y)}
Возможно использование вложенных команд with для доступа к информации во многих контекстных областях. В следующем примере экземпляры fresno и salinas являются дочерними по отношению к california. Оператор устанавливает значения _alpha для fresno и salinas без изменения значения _alpha у california.
with (california){with (fresno){_alpha = 20;}with (salinas){_alpha = 40;}}
Совместимость:
Используется с 4-ой версии Flash
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Пример: параллельный поиск указанного текстового шаблона
Пример: параллельный поиск указанного текстового шаблона Настало время посмотреть на процессы Windows в действии. Приведенная ниже в качестве примера программа grepMP создает процессы для поиска указанного текстового шаблона в файлах, по одному процессу на каждый файл. Эта
Понятия объекта и экземпляра объекта
Понятия объекта и экземпляра объекта В начале этой главы мы познакомились с типами данных, определяющими саму природу данных и набор действий, которые можно выполнять с этими данными. Так, строковый тип определяет, что данные этого типа представляют собой строки —
ifFrameLoaded - Выполняет код если загруженн определенный кадр
ifFrameLoaded - Выполняет код если загруженн определенный кадр ifFrameLoaded(Предложение)Выполняет некоторый код, если загружен определенный кадрСинтаксис:ifFrameLoaded(scene, frame) { statement;}ifFrameLoaded(frame) { statement;}Аргументы:Описание:Проверяет, доступно ли содержимое указанного кадра локально
for - Многократно выполняет некоторый код
for - Многократно выполняет некоторый код forМногократно выполняет некоторый кодСинтаксис:for (initialization; condition; next) { statements}Цикл for помещает в заголовок цикла ключевые компоненты цикла, разделенные точкой с запятой. Перед первой итерацией цикла for выполняется предложение
ifFrameLoaded - Выполняет код если загруженн определенный кадр
ifFrameLoaded - Выполняет код если загруженн определенный кадр ifFrameLoaded(Предложение)Выполняет некоторый код, если загружен определенный кадрСинтаксис:ifFrameLoaded(scene, frame) { statement;}ifFrameLoaded(frame) { statement;}Аргументы:Описание:Проверяет, доступно ли содержимое указанного кадра локально
while - Многократно выполняет некоторый код
while - Многократно выполняет некоторый код whileВыполняет оператор или серию операторов в цикле, пока условный аргумент соответствует истине (true).Синтаксис:while(condition) { statements;}Аргументы:Описание:По структуре предложение while во многом похоже на предложение if: если условие
Понятия объекта и экземпляра объекта
Понятия объекта и экземпляра объекта В начале этой главы мы познакомились с типами данных, определяющими саму природу данных и набор действий, которые можно выполнять с этими данными. Так, строковый тип определяет, что данные этого типа представляют собой строки —
3.1. Природа объекта
3.1. Природа объекта Что является и что не является объектом? Способностью к распознанию объектов физического мира человек обладает с самого раннего возраста. Ярко окрашенный мяч привлекает внимание младенца, но, если спрятать мяч, младенец, как правило, не пытается его
Разрыв объекта
Разрыв объекта Команда BREAK позволяет удалять части объекта или разбивать объект на два. Для ее запуска следует нажать кнопку Break (Разрыв) на вкладке Home (Основная) в группе Modify (Редактирование) ленты или на панели инструментов Modify (Редактирование). Можно также выполнить
В конце спринта
В конце спринта 1. Провести открытую демонстрацию результатов спринта.2. За несколько дней до демонстрации напомнить всем про её проведение.3. Провести ретроспективу при участии всей команды и Product owner’а. Пригласить начальника отдела разработки, чтобы он помог найти
Первые телефоны на Windows Phone появятся в конце октября Михаил Карпов
Первые телефоны на Windows Phone появятся в конце октября Михаил Карпов ОпубликованоМихаил Карпов Несмотря на то, что компания Microsoft не называет точной даты поступления в продажу смартфонов на основе новой мобильной ОС Windows Phone 7, в интернете появились
В конце 1930-х
В конце 1930-х Жили в эти годы Сергей Алексеевич с женой, ее матерью (пианисткой Елизаветой Сергеевной Штейнберг) и родившимся в 1935 году сыном Сергеем в двух комнатах в трехкомнатной квартире (третью занимали соседи). Дом находился в Лефортово, на Красноказарменной улице, в
Освещенность объекта
Освещенность объекта Освещенность объекта съемки прямо пропорциональна яркости источника света. При увеличении яркости света в два раза освещенность предмета также увеличится вдвое. При искусственном свете освещенность зависит от расстояния между источником света и
ОГОРОД КОЗЛОВСКОГО: На дальнем конце асимптоты, или Неосязаемый чувствами звук
ОГОРОД КОЗЛОВСКОГО: На дальнем конце асимптоты, или Неосязаемый чувствами звук Автор: Козловский ЕвгенийТолько не надо уличать меня в невежестве: я в свое время прослушал в политехе курс матанализа и помню до сих пор, что конца у асимптоты быть не может - она столь же