Pull to refresh

Comments 5

Отличное руководство.
Двойное спасибо за готовые файлыс каждым листингом.
вообще-то оно ничему хорошему не научит.

«Также видно, что 2 из моих функций вверху списка: decimalToHex и makeColorSorder. Эти 2 функции в сумме занимают 13,2% времени»
«decimalToHex вызывается из makeColorSorter»

в сумме они всё-таки занимают 7.96% ибо total включает в себя время вызовов дочерних функций. и, кстати, лучше нажать на значёк процента, чтобы перевести данные в миллисекунды. если 8% — это жалкие 10мс, то эти оптимизации не стоят потраченного времени.

далее, тормоза первой функции вызваны прежде всего вызовом console.log и если уж и менять реализацию конвертации, то лучше на что-нибудь типа:
return ( d % 0x100 + 0x200 ).toString( 0x10 ).substring( 1 )
оно хотябы не нагенерирует всякой ламбады при передаче чисел вне предполагаемого диапазона

а основные тормоза приложения вообще вызваны слишком частым обращением к дому, о чём никакой профайлер нам ничего не сказал и пришлось догадываться самостоятельно.

вывод: хромовский профайлер — довольно бестолковая вещь, так как не показывает времена выполнения и частоту вызовов апишных функций. а ведь они — основной источник тормозов.
что-нибудь посоветуете?
разве что console.time + console.timeEnd для поиска узких мест и далее метод научного тыка
Жаль, думал, что-то интересное автоматическое есть.
Ну значит и дальше приходётся пользоваться тем, что есть.
Sign up to leave a comment.

Articles