j0hnik,
вопрос был про this!
Кирилл Margheriti,
(user.name == "Вася" ? user.hi : user.bye)();
потому что эта строка "достаёт" функции из обьекта, так
(user.name == "Вася" ? function() { alert(this.name); } : function() { alert("Пока"); })();
и this тут уже скорее будет window, а user.
на форуме есть несколько тем про this, надо искать, там более профессионально изложено.