PDA

Просмотр полной версии : П-а-м-а-г-ы-т-е-!-!-!


Тёмный Эльф
22.10.2001, 19:48
Привет всем...
У меня вопрос, почему Флэш так долго выполняет функцию String.charAt?
Я её в цикле 20х15 делаю - 5 сек пашет... нельзя ли чё по быстрее придумать?

Cerber
22.10.2001, 19:52
исходник кинь

APM
22.10.2001, 21:25
Потому что флэш - интерпретатор. Используй функцию substr - она хоть и депрекейтет, но зато существенно быстрее. Все остальные функции работы
со строками фактически ее и используют через интерпретатор. Если все-
таки будет не достаточно быстро поищи на форуме тему месячной давности что-то типа "как загрузить массив быстрее чем split" там
была аналогичная ситуация и какое-то решение было.

RFMitrio
23.10.2001, 00:25
Из опыта скажу - увы, но substr и substring тоже не летают :( :( :(

Тёмный Эльф
23.10.2001, 10:28
В первом фрейме : loadVariablesNum('<имя файла>');-отсюда грузится длинющая переменная str, состоящая из строки из цифр, т.е. строка...
Во втором фрейме :

for (i=1;i<24;i++) {
for (k=1;k<15;k++) {
b=str.charAt(<формула зависимости от i и k>);
dublicateMovieClip('a_'+b,'a__'+b,i*15+k);
setPropertes(_x;'a__'+b;k*n+n1);
setPropertes(_y;'a__'+b;i*m+m1);
}
}

Самая долгая операция - b=str.charAt(...);

...............................