Показать сообщение отдельно
  #7 (permalink)  
Старый 13.11.2017, 19:29
Кандидат Javascript-наук
Отправить личное сообщение для Lion777 Посмотреть профиль Найти все сообщения от Lion777
 
Регистрация: 04.11.2017
Сообщений: 117

лексическое окружение области видимости, твой user ссылается на window, а твой userName на window.userName, а тебе надо на window.user.userName, так о каком лексическом окружении ты говоришь, непонятно, теперь понятно ? )) Вообщем твой userName ищет сначала внутри твоей функции, а потом глобально в window, если ты не указываешь в каком окружении искать
var user = {
  userName: 'Василий',
  display: function() {
    alert(window.user.userName);
  }
}
user.display();

или так
var user = {
  userName: 'Василий',
  display: function() {
var userName = "Петя"
    alert(userName);
  }
}
user.display();

или так
var userName = "Федя"
var user = {
  userName: 'Василий',
  display: function() {
    alert(userName);
  }
}
user.display();

ну или так
var user = {
  userName: 'Василий',
  display: function() {
    alert(this.userName);
  }
}
user.display();
Ответить с цитированием