Вызов метода объекта. 
		
		
		
		Здравствуйте. 
	Подскажите пожалуйста. Есть код: 
function Foo() {
     return 1 + 1;
}
var foo = new Foo();
Вопрос: нужно сделать так, чтоб при вызове foo вызывался не сам объект, а именно его метод, то есть результат был 2.  | 
	
		
 :-?  new убрать 
	 | 
	
		
 нет, можно менять только код конструктора. 
	 | 
	
		
 Конструктор возвращает объекты, это же так объектно-ориентированно (если понимаешь о чем я). 
	
alert(new Two + new Two);
function Two() { return new Number(1 + 1); }
 | 
	
		
 там нет ни конструкторов, ни объектов с методами которые могут вернуть 2, Foo это просто функция. если надо 2, то просто без new: 
	
function Foo() {
     return 1 + 1;
}
var foo = Foo;
alert( foo() );
если нужен конструктор c методом, то как-то так, например: 
function Foo() {
     this.two = function () { return 1 + 1 };
}
var foo =new  Foo();
alert( foo.two() );
 | 
	
		
 pikko, смотри предыдущий ответ. Я думаю автор это и просил. А разгадка проста - конструктор может вернуть только объект. Примитивы игнорируются. 
	 | 
| Часовой пояс GMT +3, время: 17:48. |