Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Javascript - есть ли разница? / 1 сообщений из 1, страница 1 из 1
05.09.2009, 12:24
    #36180137
iConst
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javascript - есть ли разница?
Всем привет.
Пытаюсь разобраться в тонкостях javascript, в частности с утечками памяти и замыканиями (как с наиболее вероятным фактором).
Дано: класс javascript:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
function someClass()
{
    var data;
    var _this = this;
    this.func;

    this.exec = function()
    {
        data = ... // take the data
    
         if(_this.func)
            _this.func(data);
    }
}

// Реализация # 1 :
function anyFunc(data)
{
      alert(data);
}

var some1 = new someClass();
some1.func = anyFunc;
some1.exec();


// Реализация # 2 :
var some1 = new someClass();
some1.func = function(data)
{
      alert(data);
}
some1.exec();

Внешне работают абсолютно одинаково. Но реализация совершенно разная.
В каком из вариантов есть подводные ... грабли? :)


Пояснения: довольно долго писал фрейворк для веб-интранет проекта и как-то был уверен в достаточной правильности реализации. И тут, под занавес, решил посмотреть производительность и memory leak (спохватился!).

И если с первым все в порядке - то второе дает 30% прирост занимаемой памяти (FF 70MB -> 90MB) за час запущенного прилдожения БЕЗ работы!

Сейчас у меня реализовано ни 1-м ни 2-м вариантом а через callback функцию (близко ко 2-му варианту, но немного иначе).

В приложении используются таймеры и запросы к сервисам (получение данных - проверка изменившейся информации, сообщения, серверное время и т.п.).

Срочно ищу где собака зарыта - кто знает инструментарий для ОТЛОВА утечек? Желательно бесплатный - нет времени это покупать. В понедельник проект должен быть установлен на сервер - у меня полтора суток.
Очень буду благодарен.
Перевернув мир - оглянись, может перевернулся ты сам?!
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Javascript - есть ли разница? / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]