Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.06.2008, 16:42
Аватар для scuter
Профессор
Отправить личное сообщение для scuter Посмотреть профиль Найти все сообщения от scuter
 
Регистрация: 14.03.2008
Сообщений: 169

не понятная конструкция в JS
я в различных JS скриптах видел эту конструкцию но не могу понять что она делает,
например такую вещь я могу понять
myclass = new (function(){
      ........
}

тут создаётся новый объект с методами параметрами и т.д.
но вот когда делают такое дело я не понимаю
(function(){
      ........
}

вот мне интересно куда кидается этот объект,
для чего именно так делают и зачем.
Ответить с цитированием
  #2 (permalink)  
Старый 06.06.2008, 16:47
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

var x= 1;
new function( ){
    var x= 2;
};
alert( x );
__________________
.ня
Ответить с цитированием
  #3 (permalink)  
Старый 06.06.2008, 16:56
Аватар для scuter
Профессор
Отправить личное сообщение для scuter Посмотреть профиль Найти все сообщения от scuter
 
Регистрация: 14.03.2008
Сообщений: 169

tenshi,
твои ответы какие то не понятные,
или ты по русски писать не умеешь?
Ответить с цитированием
  #4 (permalink)  
Старый 06.06.2008, 18:31
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

хай! ^_^
__________________
.ня
Ответить с цитированием
  #5 (permalink)  
Старый 06.06.2008, 20:28
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

Возьмем функцию
function tram() {
alert(1);
}
alert(tram);

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

Как-то так.

Последний раз редактировалось Snipe, 06.06.2008 в 20:52.
Ответить с цитированием
  #6 (permalink)  
Старый 06.06.2008, 21:03
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

scuter, это локализация области видимости, чтобы не гадить в глобальной.
(function() {
  // Следующие переменные и функции не будут видны в глобальной видимости
  var test = 0;
  var f = function() {};
})();
Ответить с цитированием
  #7 (permalink)  
Старый 06.06.2008, 21:06
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от scuter
tenshi,
твои ответы какие то не понятные,
или ты по русски писать не умеешь?
С его ответами такой парадокс: те, кто и так в теме, понимают, что он хотел сказать, остальные - нет. Но тем, кто в теме, его ответы не нужны.
Ответить с цитированием
  #8 (permalink)  
Старый 06.06.2008, 21:23
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

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

Т.е. в итоге мы имеем и используем только то, что нам действительно необходимо, причем в единственном экземпляре.

Так?
Ответить с цитированием
  #9 (permalink)  
Старый 07.06.2008, 12:53
Аватар для scuter
Профессор
Отправить личное сообщение для scuter Посмотреть профиль Найти все сообщения от scuter
 
Регистрация: 14.03.2008
Сообщений: 169

спасибо теперь понятно.
Ответить с цитированием
  #10 (permalink)  
Старый 07.06.2008, 12:58
Аватар для Snipe
Профессор
Отправить личное сообщение для Snipe Посмотреть профиль Найти все сообщения от Snipe
 
Регистрация: 06.05.2008
Сообщений: 765

Больше вопросов сложных и интересных, JS - это не только кроссбраузерность и помощь новичкам (оба этих пункту уже надоели).
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрыть ссылку на js Googert Общие вопросы Javascript 10 21.02.2012 15:29
вызов функции, из JS генерируемого на сервере subaru AJAX и COMET 1 12.07.2008 12:44
Как передавать переданные в js файлы параметры? Mattias Общие вопросы Javascript 4 26.06.2008 15:58
опубликуйте пожалуйста функционал JS scuter Сайт Javascript.ru 21 05.06.2008 16:44
подключение стороннего js скрипта friend Общие вопросы Javascript 2 24.05.2008 18:51