Архів для Грудень, 2007

Flash CS3 не знає, що таке .htm :)

четвер, Грудень 13, 2007
  1. В Publish Settings на першій вкладці змінюємо розширення для HTML файлу на .htm.
    1.gif
  2. Зачиняємо віконце Publish Settings.
  3. При повторному відкритті бачимо знову розширення .html але після нашого .htm.
    2.gif

MovieClip з “кнопковими” назвами кадрів (_up, _over, _down) перестає бути “чистим” MovieClip’ом

вівторок, Грудень 11, 2007

Якщо в MovieClip’і є кадр з назвою ‘_up’ та/або ‘_over’ та/або ‘_down’, то флеш при компіляції генерує клас для цього MovieClip’у, щоб він міг працювати як SimpleButton. Це можна перевірити подивившись результат методу toString() або функції getQualifiedClassName().

Ця поведінка доволі логічна, тільки мені не зрозуміло одне: якщо для того щоб MovieClip працював як SimpleButton потрібен клас, який реалізує цю можливість, то де приховується ця реалізація коли ми самі визначаємо клас для MovieClip’а в Linkage Properties?

Парадокс з NaN

понеділок, Грудень 10, 2007

НеЧисло є Числом:

trace(NaN is Number); // true

Так, про це пишуть в документації, але це трохи не логічно :)

Має місце тільки в ActionScript 3.0

Загадка про getQualifiedClassName() та Function

понеділок, Грудень 10, 2007

Що поверне такий вираз?

getQualifiedClassName(function():void{});

(more…)

Оператор in в кілька разів швидше hasOwnProperty()

п’ятниця, Грудень 7, 2007

Олег (він же a_[w]) потішив іще однією швидкісною блохою:

var obj:Object = {p:true};
var r:Boolean = false;
var pn:String = 'p';
var t:Number = getTimer();
var i:uint;
for(i=0; i<1000000; i++) r = obj.hasOwnProperty('p');
trace("hasOwnProperty('p'): " + (getTimer()-t)); // 275
t = getTimer();
for(i=0; i<1000000; i++) r = obj.hasOwnProperty(pn);
trace("hasOwnProperty(pn): " + (getTimer()-t)); // 271
t = getTimer();
for(i=0; i<1000000; i++) r = 'p' in obj;
trace("'p' in : " + (getTimer()-t)); // 96
t = getTimer();
for(i=0; i<1000000; i++) r = pn in obj;
trace("pn in : " + (getTimer()-t)); // 97

Результат: майже в 3 рази.