猿问

this的指向和apply的问题

functionadd(a,b){
returna+b
}
varse=seriz(add);
functionseriz(fn){
returnfunction(){
returnfn.apply(this,arguments);
}
}
console.log(se(1,2))
看不懂seriz里面的操作,有没有大神简单一下。returnfunction是为啥,fn.apply(this,arguments);this指向哪?
慕桂英3389331
浏览 225回答 2
2回答

慕运维8079593

1、returnfunction这个是因为上面的se变量要赋予一个函数。2、fn.apply(this,arguments);这个this指像是window,window下是没有arguments,所以需要apply方法来指向fn,也就是add,如果直接执行fn(arguments)的话是会报undefined的
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答