Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   $.extend() зачем оно? (https://javascript.ru/forum/jquery/43273-%24-extend-zachem-ono.html)

mi.rafaylik 29.11.2013 14:58

kobezzza,
Верно, это я напутал с native JS

niko42 29.11.2013 15:04

Большое Всем спасибо за пояснение!

niko42 29.11.2013 15:11

Есть еще один вопрос:) :
Суть работы скрипта, делаем запрос на сервер, получаем данные и все данные записываем в storage: {},
(function($){
    var self={
        config:		{
            //Вызов функции после того, как все объекты будут считаны из хранилища
            callback:	function(){},
            //Путь к серверному хранилищу
            path:		'storage.php'
        },
        
        current:	{
            //Вызвано впервые?
            first:		true
        },
        
        //Само хранилище данных
        storage:	{},
        
        //запуск на поулчение данных
        init:		function(objects,config){
            if(!self.current.first)return;
            self.current.first=false;
            //Уст. конфиг
            $.extend(self.config,config);
            //Обраб. объекты
            self.storage=objects;
            //Восст. объекты
            self.get();
        },
        
        //Расширяет объекты
        ext:		function(objects){
            for(var k in objects){
                if(typeof(self.storage[k])=='undefined'){
                    self.storage[k]={};
                }
                //Расширяем
                if(typeof(objects[k])=='object'){
                    $.extend(true,self.storage[k],objects[k]);
                } else {
                    self.storage[k]=objects[k];
                }
            }
        },

        //Возвращает объекты из хранилища
        get:		function(){
            $.getJSON(self.config.path,function(data){
                self.ext(data);
                self.config.callback();
            });
        }
    };
    
    $.extend({
        storage:	self.init
    });
    
})(jQuery);

var a={i:0};//предположим, что тут объекты
    $(function(){
        $.storage({obj:a},{
            callback:	function(){
                alert(a);
            }
        });
    });


Вопрос, как мне обратиться к хранилющу storage: {}, - напряму?


Часовой пояс GMT +3, время: 15:50.