Руководство по actionscript. часть 3, стр. 041

Обращение к атрибутам и элементам

с зарезервированными символами в именах

Если имя атрибута или элемента содержит символ, который считается недопустимым для использования в идентификаторах языка ActionScript (например, дефис), вы не сможете обратиться к этому атрибуту или элементу с помощью оператора «точка». Вместо этого необходимо использовать метод attribute ( ), child ( ) или оператор [ ]. Например:

var saleEndsDate:XML = February 1, 2006 trace(saleEndsDate. mME-ZONE); // НЕДОПУСТИМО! He делайте так.

trace(saleEndsDate. attribute(«TIME-ZONE»)): // Допустимо. Делайте так. traceCsaleEndsDate.@["TIME-ZONE"]): // Тоже допустимо.

В случае с недопустимым кодом saleEndsDate. @ TIME-ZONE среда выполнения Flash трактует дефис как операцию вычитания и интерпретирует выражение как saleEndsDate. @Т1МЕ минус ZONE! По всей видимости, переменная (или метод) с именем ZONE не существует, поэтому среда выполнения Flash сгенерирует следующее сообщение об ошибке:

Access of undefined property ‘ZONE’

По-русски это будет выглядеть так: Обращение к неопределенному свойству ‘ZONE’.

Однако если бы переменная ZONE существовала, ее значение было бы вычтено из пустого объекта XMLList, представленного выражением saleEndsDate. @Т1МЕ, и никакой ошибки не возникло бы! Без сообщений об ошибках неправильное обращение к элементу saleEndsDate. @TIME-ZONE будет очень сложно выявить. Принимая во внимание, что атрибут saleEndsDate. @TI ME не существует, нам бы хотелось, чтобы среда выполнения Flash сгенерировала ошибку «несуществующего атрибута», но, к сожалению, в версии спецификации Е4Х, реализованной в языке ActionScript 3.0, оговаривается, что в результате обращения к несуществующим атрибутам должен возвращаться пустой объект XMLL i s t, не приводя к возникновению ошибки. Будущие версии языка ActionScript могут исправить эту ситуацию.

Мы завершили рассмотрение базовых приемов обращения к данным XML. Перед тем как продолжить изучение расширения Е4Х, еще раз вернемся к важной теме, касающейся интерпретации экземпляра класса XMLList в качестве экземпляра класса XML.

Интерпретация объекта XMLList как экземпляра класса XML

Как мы уже знаем, в расширении Е4Х ссылка на объект XMLList, содержащий всего один экземпляр класса XML, может рассматриваться как ссылка на этот экземпляр. Например, мы видели, что выражение:

novel. AUTHORC0].setName(«WRITER»):

эквивалентно выражению:

novel. AUTHOR. setNameC»WRITER»): // Опущен [0]

Они являются эквивалентными, потому что выражение novel. AUTHOR ссылается на объект XMLList, содержащий всего один экземпляр класса XML (элемент ).

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 135
  • 25.02.2011">Руководство по actionscript. часть 6, стр. 100
  • 16.03.2010">10 главных пунктов для оптимизации под поисковые системы
  • 02.04.2012">Хакеры LulzSec Reborn рассказали о планах на будущее
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 048
  • 15.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.57
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 041
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 066
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.63
  • 11.03.2011">Руководство по actionscript. часть 3, стр. 145
  • 15.11.2011">Обзор ноутбука Lenovo
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 051
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.7
  • 22.01.2011">Руководство по actionscript. часть 1, стр. 137
  • 06.03.2013">Sony готовится ответ HTC One
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...