例如,如果我有
function routine(n){
function subroutine(n){
return n+1;
}
return subroutine(n*n);
}
每次拨打subroutine
时都会重新routine
?
然后,我应该使用
var routine = (function(){
function subroutine(n){
return n+1;
}
return function(n){
subroutine(n*n);
}
})();
代替?
答案 0 :(得分:1)
是的,它已多次创建。您可以查看更多信息here
答案 1 :(得分:1)
是的,它会多次创建。
为什么你不能使用:
function routine(n){
return function (n){
return (n*n)+1;
};
}
或者:
function routine(n){
return (n*n)+1;
}
或者那只是一个例子?