本文實例講述了JS匿名函數和匿名自執行函數概念與用法。分享給大家供大家參考,具體如下:
1. 匿名函數的常見場景
js中的匿名函數是一種很常見的函數類型,比較常見的場景:
<input type="button" value="點擊" id="btn"><script type="text/javascript"> //匿名函數的第一種情形 var btn=document.querySelector("#btn"); btn.onclick=function(){ // alert("aaaaa"); } //匿名函數的第二種情形 setInterval(function(){ // alert("bbbbb"); }, 1000); //匿名函數的第三種情形 var fun=function(){ alert("ccccc"); } // fun(); //匿名函數的第四種情形 var obj={ name:"dddd", say:function(){ alert(this.name); } } obj.say();</script>
上面展示的就是常見的匿名函數的使用場景。(注意:querySelector是H5中新增的查找dom元素的方法)
2. 匿名自執行函數
見名思義,匿名自執行函數首先是一個匿名函數,但是這個函數是可以自己自動執行的,不需要借助其他的元素。
<input type="button" value="點擊" id="btn"><script type="text/javascript">//1,匿名函數的第一種實現方式(function(data){ // alert(data);})("eee");//2.匿名自執行函數的第二種實現方式(function(){ // alert("fff");}());//3.匿名自執行函數的第三種實現方式!function(data){ // alert(data);}("hhh");//4.匿名自執行函數的第四種實現方式var fun=function(data){ alert(data);}("iii");
從上面的代碼塊中我們可以總結出實現匿名自執行函數的方法一般有四種。
3. 匿名自執行函數的作用
①. 匿名自執行函數最常見的作用是用于實現閉包的情況中。關于閉包的概念我會在后面的文章中詳細介紹。這里簡單說明一下閉包。閉包:閉包是js的一種特性,我們可以通過閉包實現函數內外部的連接,并且可以使得函數的局部變量始終存在于內存中。
②. 匿名自執行函數還可以用于在js中模擬創建塊級作用域,即如果使用匿名自執行函數將某些代碼包裹起來可以實現塊級作用域的效果,減少全局變量的數量,在匿名自執行函數執行結束后變量就會被內存釋放掉,從而也會節省了內存。
4. 匿名函數和匿名自執行函數總結
匿名函數可以簡單理解為沒有名字的函數,常見的場景一共就有4種。
匿名自執行函數可以簡單理解為可以自己執行的匿名函數,實現匿名自執行函數的方式一共有4種。
匿名自執行函數的作用就是用于閉包和創建獨立的命名空間兩個方面。
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答