функции в глобальном объекте window
использую фреймворк backbone.
вопрос не сколько по фреймворку, сколько по организации хранения функций в js. Видать я чего то не понимаю здесь. Фреймворк определяется следующим образом:
(function(){
var Backbone;
// и дальше пошло определение функций
...
// в конце определяются еще несколько функций
var getUrl = function(object) {...};
var wrapError = function(onError, model, options) { ... };
var escapeHTML = function(string) { ... };
}) ();
Вопрос в следующем: в глобальном объекте window объект Backbone есть, а функций этих нету, хотя существуют другие глобальные функции. Где находятся эти функции? Код фреймворка |
они находятся в замыкании. и они используются.
пример для escapeHTML
escape : function(attr) {
var html;
if (html = this._escapedAttributes[attr]) return html;
var val = this.attributes[attr];
return this._escapedAttributes[attr] = *!*escapeHTML*/!*(val == null ? '' : val);
},
|
ну то что используются это понятно.
получается обратится к ним извне не получится раз они находятся в замыкании в функции без названия. ок. спасибо большое |
ну так напишите в замыкании
Backbone.escape = escape; и используйте на здоровье |
| Часовой пояс GMT +3, время: 04:04. |