Как найти, какая часть JS замедляет страницу - PullRequest
4 голосов
/ 30 декабря 2010

Привет, моя страница занимает около 9 секунд на локальном сервере и около 20 секунд на удаленном сервере, я уверен, что проблема в js, но я не могу найти, что делает его медленным, пожалуйста, помогите мне найти решение иликакой-нибудь инструмент, чтобы выследить проблему?

Ответы [ 4 ]

4 голосов
/ 30 декабря 2010

Все современные крупные браузеры теперь имеют встроенную функцию профилирования js. Firebug & Chrome оба имеют хорошие инструменты профилирования клиентских сценариев, а также мониторы http-трафика, которые также могут помочь в диагностике проблемы. IE также имеет один.

Вот пример профилировщика firebug в действии. alt text

[EDIT] В Chrome нажмите Ctrl + Shift + J, чтобы открыть страницу профиля JavaScript.

1 голос
/ 30 декабря 2010

Альтернатива встроенным или добавленным инструментам профилирования (предпочтительный способ, я бы сказал): использовать таймер.Я приготовил это:

 function Timer(){
  var start = new Date
      ,ended = 'running ...';
  return {
      start: function(){
              start = new Date; 
              return this
      },
      stop:  function(mssg) {
              var stoppedAt = (new Date - start);
           ended = [(mssg ? mssg+': ' : '')
                           ,(stoppedAt/1000)+' sec (+/- 15ms)'].join('')
              return ended;
      }
      ,toString: function(){
                return ended;
      }
  };
}
//usage:
var timenow = new Timer().start();
// run a function
console.log(timenow.stop('this took '));

Вы также можете использовать функцию-обертку для определения времени выполнения функции.Что-то вроде:

function timedFn(fn){
  var timer = new Timer().start();
  fn();
  console.log(timer.stop('function took '));
}
0 голосов
/ 30 декабря 2010

Вы можете использовать YSlow для Firebug.Со страницы YSlow:

YSlow анализирует веб-страницы и предлагает способы повышения их производительности на основе набора правил для высокопроизводительных веб-страниц.YSlow - это дополнение к Firefox, интегрированное с инструментом веб-разработки Firebug.YSlow оценивает веб-страницу на основе одного из трех предопределенных наборов правил или заданного пользователем набора правил.Он предлагает предложения по улучшению производительности страницы, суммирует компоненты страницы, отображает статистику о странице и предоставляет инструменты для анализа производительности, включая Smush.it ™ и JSLint.

0 голосов
/ 30 декабря 2010

Я добавлю Веб-разработчик 1.1.8 Дополнение для Firefox с Firebug & Chrome

Для получения более подробной информации смотритеэто ссылка

с уважением

Wazzy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...