Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.08.2014, 15:05
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

достучаться до объекта другой функции
Есть в одном файле два блока:

1.
$(document).ready(function(){

    var obj1 = {
        func1 : function(){
            alert(1);
        }

});


и второй:

$(document).ready(function(){

    var obj2 = {
        func2 : function(){
            КАК здесь вызвать функцию obj1.func1() ?
        }

});


Вопрос собственно вот в чем:

как из второго блока вызвать функцию, которая находится в первом блоке.
По сути это две разных анонимных функции, а юзать глобальное пространство не очень, мне кажется. Может как-нибудь на прототипах?
Ответить с цитированием
  #2 (permalink)  
Старый 14.08.2014, 15:15
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,213

Сообщение от SunYang
как из второго блока вызвать функцию, которая находится в первом блоке.
По сути это две разных анонимных функции
Именно поэтому - никак.
Ответить с цитированием
  #3 (permalink)  
Старый 14.08.2014, 15:18
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

написать вместо
... var obj2 = { ...
это:
... window.obj2 = { ...

ну и с первым также
Ответить с цитированием
  #4 (permalink)  
Старый 14.08.2014, 15:23
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,213

Сообщение от skrudjmakdak
написать вместо
Или так...

$(document).ready(function(){

    var obj1 = myObj();

});
//
$(document).ready(function(){

    var obj2 = {
        func2 : function(){
			var obj1 = myObj();
            obj1.func1();
        }

});
//
function myObj() {
    return {
        func1 : function(){
            alert(1);
		};
	};
};
Ответить с цитированием
  #5 (permalink)  
Старый 14.08.2014, 15:27
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

угу, или под один ready занести
у кого еще какие варианты))
Ответить с цитированием
  #6 (permalink)  
Старый 14.08.2014, 17:01
Аватар для Arramis
Кандидат Javascript-наук
Отправить личное сообщение для Arramis Посмотреть профиль Найти все сообщения от Arramis
 
Регистрация: 22.07.2013
Сообщений: 104

предложу свой чтоли, хотя принципиально мало чем отличается от предыдущих вариантов ...

var funcsStorage = {};

$(document).ready(function() {

    var obj1 = {
        func1: function() {
            alert(1);
		}
	}
		
		funcsStorage.func1 = obj1.func1;		
});

$(document).ready(function() {

    var obj2 = {
        func2: function() {
            funcsStorage.func1();
        }
	}
		
	//obj2.func2(); // 1
});
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление функции внутрь другой функции Lion_astana jQuery 9 28.12.2013 14:33
Сложение переменных в другой функции inexwai jQuery 3 30.04.2013 11:33
Проверить данные в функции, которая работает с другой функцией. Andrej_2 Общие вопросы Javascript 5 27.09.2012 22:42
Передача функции другой функции ntro123 jQuery 3 20.02.2011 12:15
Вызов функции из другой функции.. ?? glutton Общие вопросы Javascript 3 21.08.2009 22:33