严格模式下是禁止使用arguments.callee
通过函数命名表达式来实现arguments.callee的效果。
var sum=(function(){
'use strict'
return function fun(num){
if(num<=1){
return 1;
}else{
return num+fun(num-1);
}
}
})()
console.log(sum(5));//15
var sumAnother=sum;
console.log(sumAnother(5));//15
sum=null;
console.log(sumAnother(5));//15
网友评论