arguments.callee
学习记录
arguments.callee的用法
// arguments.callee等于函数本身
var i = 0;// 执行次数
var a=(function(){
i++;
console.log("i am running..." + i);//输出执行次数
console.log(arguments.callee);//打印arguments.callee
return arguments.callee;//将arguments.callee返回给变量a
})();//()为自运行
a();//调用变量a
//执行结果:
//i am running...1
/*ƒ (){
i++;
console.log("i am running..." + i);
console.log(arguments.callee)
return arguments.callee;
}*/
//i am running...2
/*ƒ (){
i++;
console.log("i am running..." + i);
console.log(arguments.callee)
return arguments.callee;
}*/
实际应用
//计算a的阶乘
function jc(a){
if(a<=1){
return 1;
}else{
return a*arguments.callee(a-1);//等同于return a*jc(a);
}
}
console.log(jc(5))
//结果
//120
使用arguments.callee的好处在于函数名发生变化时,仍能正常执行该函数
文章最后发布于: 2018-12-02 16:57:14
相关阅读
关于Weekend的用法(下) 1. Over the weekend – Over the weekend means that the same thing as during the weekend. It is used
“本地过程调用,就好比你现在在家里,你要想洗碗,那你直接把碗放进洗碗机,打开洗碗机开关就可以洗了。这就叫本地过程调用。” “远程,
array_column()作用 返回输入数组中某个单一列的值。语法 array_column(array,column_key,index_key);参数介绍 array:
著作权法:https://www.66law.cn/tiaoli/14.aspx信息网络传播权保护条例:http://www.hncfs.edu.cn/wlxxzx/page.asp?ID=15334&class=
httppost的用法(NameValuePair(简单名称值对节点类型)
定义了一个list,其数据类型为NameValuePair.。List<NameValuePair> param = new ArrayList<NameValuePair>。这个代码多处用于jav