лексическое окружение области видимости, твой 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();