![]() |
Неявное преобразование типов
Кто-нибудь может объяснить такую байду:
Код:
trace(typeof obj.interval); //Number. interval задана в классе как var interval:Number=0; версия Flash 8. |
Проверка типов происходит на стадии компиляции только. В AS3 была бы ошибка.
|
у флеша динамический код (реальный), а всякие надстройки-интерфейсы (типа AS2) лишь для удобства (кому это удобно, другой вопрос :) ).
|
Какой-какой код?
|
offlight, а Вы понимаете что interval и obj.interval - это разные переменные?
obj.interval никак и не типизируется, почему и возможно переопределение. |
bbexp, написано же, что var interval это в классе. А obj является, соответственно, его экземпляром.
|
Цитата:
В AS тип переменной определяется интерпретатором динамически, в ходе выполнения программы. (И в этом лично мне AS очень симпатичен) |
Цитата:
или это вы про obj.xml.firstChild.attributes.interval? это как раз другая переменная и есть. Это вообще даже не переменная :) это атрибут узла в xml файле, в этом как раз и суть вопроса. Цитата:
|
chingachgoog, очень жаль, что нравится. А мне вот не очень. И динамические переменные — это относится к AS1/AS2.
offlight, отказываться от типизации в таком случае не стоит совершенно. Но надо знать и преобразовывать явно, в случае аттрибутов XML. |
| Часовой пояс GMT +4, время: 12:53. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.