js 之特别函数

116 阅读1分钟

1.内部私有函数

闭包

//1.内部私有函数  
    function a(x){  
        function b(y){  
            return y+10;  
        };  
        return "在a函数体内调用b函数:"+b(x);  
    }  
    //只能从a的函数中调用B的函数,其他情况均不可调用  
    document.write(a(5));  
    //document.write(b(3)); 

2.自调函数

只需要将匿名函数的定义放进一堆括号中,然后外面再紧跟一对括号即可,第二个括号的作用是“立即调用”的意思,同时也是向匿名函数传递参数的地方。

//2自调函数   
var a=function(){  
    function setUp(){  
        alert('111');  
        }  
    function doWhat(){  
        alert('222');  
    }  
    setUp();  
return doWhat();  
}();  
a();  

3返回函数的函数

回掉

//3返回函数的函数   
 function a(){  
    alert('aaa');  
    return function b(){  
        alert ('bbb');  
    }  
 }  
  // var aaa=a();  
 // aaa();  
 a()();//()可以代表着执行一次函数  

4.重写自己的函数

//4重写自己的函数  
 function a(){  
        alert('aaa');  
        a=function(){  
            alert("bbbbbb");  
        }  
  
 }  
 //a()();  
 a();a();