首页 > 代码库 > arguments.callee的用法
arguments.callee的用法
1.今天在看高阶函数,其实currying的一个函数中,有那个arguments.callee,表示不见过,查了查。
arguments.callee 在哪一个函数中运行,它就代表哪个函数。 一般用在匿名函数中。在匿名函数中有时会需要自己调用自己,但是由于是匿名函数,没有名子,无名可调。这时就可以用arguments.callee来代替匿名的函数
var currying = function ( fn ) { var args = []; return function () { if( arguments.length ===0 ){ return fn.apply( this, args); }else{ [].push.apply(args, arguments); return arguments.callee; } } }; var cost = (function () { var money = 0; return function () { for( var i = 0,l = arguments.length; i < l; i++){ money += arguments[i]; } return money; } })() var cost = currying( cost ); cost(100); cost(200); cost(300); alert(cost()) //600
arguments.callee的用法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。