Показать сообщение отдельно
  #3 (permalink)  
Старый 04.11.2011, 19:18
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

jsuse, вы слишком мудрите. В js объекты передаются по ссылке.
func - ссылка на функцию.
func() - запуск исполнения функции(возвращает результат)

Если совсем упростить: в данном случае свойство sayHi просто становится ссылкой на ту же функцию, что и func. И соответственно данная функия может быть запущена как user.sayHi() и будет выполняться в контексте user .
В скобки как обычно передаются параметры(если что).

var firstName="Даздраперма";
var user = {
firstName: "Вася"
};
function func() {
return this.firstName;
}
user.sayHi = func;
alert([
'func: '+ func,
'func(): '+func(),
'user.sayHi(): '+user.sayHi()
].join('\n\n'))
__________________
29375, 35

Последний раз редактировалось Aetae, 04.11.2011 в 19:21.
Ответить с цитированием