Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.10.2016, 21:50
Интересующийся
Отправить личное сообщение для WaldeMar1321 Посмотреть профиль Найти все сообщения от WaldeMar1321
 
Регистрация: 14.01.2016
Сообщений: 12

Доступность областей видимости относительно друг друга.
Допустим есть два namespace'а:

var One = (function(){
   /*somefuns*/
   return {
     Out: function() {
          console.log("one");
     }
  }
})()
var Two = (function(){
   /*somefuns*/
   return {
     Out: function() {
         One.Out();//undefined
     }
   }
})()


Как сделать так чтоб One был виден из Two?

Последний раз редактировалось WaldeMar1321, 09.10.2016 в 22:04.
Ответить с цитированием
  #2 (permalink)  
Старый 09.10.2016, 21:58
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

WaldeMar1321,

строки 8 и 16
})()
Ответить с цитированием
  #3 (permalink)  
Старый 09.10.2016, 22:04
Интересующийся
Отправить личное сообщение для WaldeMar1321 Посмотреть профиль Найти все сообщения от WaldeMar1321
 
Регистрация: 14.01.2016
Сообщений: 12

не суть, но исправил.
Ответить с цитированием
  #4 (permalink)  
Старый 09.10.2016, 22:28
Интересующийся
Отправить личное сообщение для WaldeMar1321 Посмотреть профиль Найти все сообщения от WaldeMar1321
 
Регистрация: 14.01.2016
Сообщений: 12

Я так делал у себя в коде изначально (иначе была бы ошибка в консоли). В глобальном пространстве эти два объекта видны, но обратится к первому из второго не могу. Поэтому и спрашиваю.
Ответить с цитированием
  #5 (permalink)  
Старый 09.10.2016, 22:44
Интересующийся
Отправить личное сообщение для WaldeMar1321 Посмотреть профиль Найти все сообщения от WaldeMar1321
 
Регистрация: 14.01.2016
Сообщений: 12

Ну, так и получил, попытался вызвать One.Out() из Two. Написало что One.Out() is not a function
Ответить с цитированием
  #6 (permalink)  
Старый 09.10.2016, 22:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

WaldeMar1321,

var One = (function(){
   /*somefuns*/
   return {
     Out: function() {
          alert("one");
     }
  }
})()
var Two = (function(){
   /*somefuns*/
   return {
     Out: function() {
         One.Out();//undefined
     }
   }
})()
Two.Out()
Ответить с цитированием
  #7 (permalink)  
Старый 10.10.2016, 06:33
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Сообщение от WaldeMar1321
В глобальном пространстве
В window. Скоп не при чем, переменные и так в виндоу, а безымянная функция должна присвоить переменной и больше ничего. Присвоение не работало, только и всего.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение видимости наложенных друг на друга блоков в зависимости от сепаратора karssen Общие вопросы Javascript 5 03.08.2015 16:56
[общий вопрос] Есть-ли методы держать html и js отдельно друг от друга? wayzer Элементы интерфейса 7 21.02.2015 00:39
програмное позиционирование фиксированных элементов относительно друг друга sav-oks Общие вопросы Javascript 2 04.11.2014 13:51
Отображения элементов относительно друг makarow.dmitry Элементы интерфейса 10 17.10.2014 17:57
Всплывание событий в HTML5. Перекрытие элементами друг друга. iis_ (X)HTML/CSS 3 10.09.2014 21:43