首页 > codewar上面的一道题,搞不懂

codewar上面的一道题,搞不懂

题目见这里
http://www.codewars.com/kata/5458d4d2cbae2a9438000389/train/javascript
有个解答是这样的:
var make_lazy = function (fn) {
var args = Array.prototype.slice.call(arguments,1);
return function() {
return fn.apply(fn,args);
};
};
想问下这一句fn.apply(fn,args)怎么理解啊,fn怎么就可以用apply方法呢?


每个函数都有apply方法
ps,请贴格式化的代码


fn.constructor === Function.prototype.constructor

fn 是函数啊,为什么不能有 apply 方法?


因为 fn 的原型对象 Function.prototype 存在 apply,所以 fn.apply 这样调用。

【热门文章】
【热门文章】