나는 어떤 문제에 붙어있어는이 같은 기능을 가지고 :"새로운"단어가 기능을 개체로 변경합니까?
var sayHi = function(string){
console.log(string + '' + this.name);
};
그때 내가 수행해야합니다
sayHi = giveContext(sayHi,{"name":"moe"});
을하고 내가 할 :
function giveContext(func,obj){
var fn = func;
fn.prototype.name = obj.name;
var myFn = new fn;
return myFn;
}
및 예상되는 동작은 다음과 같습니다.
sayHi('Hello') // ==> "Hello moe"
사실, givecontext의 "new"키워드는 함수 대신 객체를 반환합니다. 와 나는 단지
undefined moe
Uncaught TypeError: object is not a function
내가 부족 뭔가를 받고 있어요?
왜 'sayHi'를 두 번 할당하고 있습니까? –
미안하지만, 내가 잘못 입력 했으므로 두 번 할당하면 안된다. – flaalf