Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.07.2013, 00:52
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 1  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
По умолчанию in/as

Пребывая на Flasher.ru форуме я заметил несколько незнакомых мне операндов(или что это - мне пока неизвестно).
Думаю, подобных вещей в языке еще достаточно, о которых вы знаете, и часто используете, а я и не подозреваю, и мой код иногда превышает 1000 строк так как я решаю сложно простые вещи.
Так вот для начала мне интересно узнать, гугля, я ничего не нашел. Для чего используются in и as в коду?

Старый 18.07.2013, 01:12
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 2  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
http://help.adobe.com/ru_RU/FlashPla...rators.html#as

Добавлено через 42 секунды
И если прокрутить выше там будут все операторы.

Старый 18.07.2013, 01:24
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 3  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
in - есть два не связаных использования. for [each] (var in iterable) - форма записи цикла без явного создания итератора / всей остальной машинерии. Другой вариант - инфиксный оператор (от двух аргументов): member in collection - тестирует на вхождение member в collection.
Если бы вы его реализовывали в AS3, то получили бы что-то типа:

Код AS3:
function in(member:Object, collection:Object):Boolean {
    if (collection is Array) {
        return collection.indexOf(member) > -1;
    } else if (collection is Dictionary) {
        ...
    }
    // и т.д. для всех возможных вариантов коллекций
    // но, на самом деле реализация более эффективная
}
as - инфиксный оператор тестирующий на принадлежность объекта к предполагаемому классу или интерфейсу и возвращающий ссылку на него же, либо null, если объект не является реализацией класс / интерфейса.
Если бы вы его реализовывали в AS3, то получилось бы что-то в роде:

Код AS3:
function as(object:Object, type:Class):Object {
    if (object is type) {
        return object;
    } else {
        return null;
    }
}
__________________
Hell is the possibility of sanity

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:50.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:50.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.