Показать сообщение отдельно
  #8 (permalink)  
Старый 19.07.2010, 23:17
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

где-то так, только граница не такая четкая. Глобальные переменные - свойства объекта window, причем переменная может содержать любое значение, например, функцию. Но функция - это тоже объект
alert(Function instanceof Object);

и значение. Например, можно присвоить функцию переменной
var s = '...';
var f = function(){...};

А еще функцию можно вызвать, в этом случае она может рассматриваться как метод, особенно если она использует this, т.е. рассчитывает на вызов в контексте некоторого объекта

т.е. я бы сказал, что jQuery ($) это просто глобальная функция

по поводу фреймворков, основные подходы следующие:
1) объект-обертка, доступ к функционалу осуществляется через временный объект: $('a').click(function(){...})
2) расширение DOM/встроенных объектов: Array.prototype.method = function(){}
3) отдельные "классы"

по поводу областей видимости, можно сказать, что jQuery создает свою область видимости, потому что все манипуляции осуществляются через временный объект. mootools, prototype свои "классы" никак не изолируют от глобального пространства имен
Ответить с цитированием