Архів для декабрь, 2007
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Оператор 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 рази.


