溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JS匿名函數(shù)和匿名自執(zhí)行函數(shù)概念與用法分析

發(fā)布時(shí)間:2020-10-05 13:42:41 來(lái)源:腳本之家 閱讀:110 作者:考拉的墨爾本 欄目:web開發(fā)

本文實(shí)例講述了JS匿名函數(shù)和匿名自執(zhí)行函數(shù)概念與用法。分享給大家供大家參考,具體如下:

1. 匿名函數(shù)的常見場(chǎng)景

js中的匿名函數(shù)是一種很常見的函數(shù)類型,比較常見的場(chǎng)景:

<input type="button" value="點(diǎn)擊" id="btn">
<script type="text/javascript">
  //匿名函數(shù)的第一種情形
  var btn=document.querySelector("#btn");
  btn.onclick=function(){
    // alert("aaaaa");
  }
  //匿名函數(shù)的第二種情形
  setInterval(function(){
    // alert("bbbbb");
  }, 1000);
  //匿名函數(shù)的第三種情形
  var fun=function(){
    alert("ccccc");
  }
  // fun();
  //匿名函數(shù)的第四種情形
  var obj={
    name:"dddd",
    say:function(){
      alert(this.name);
    }
  }
  obj.say();
</script>

上面展示的就是常見的匿名函數(shù)的使用場(chǎng)景。(注意:querySelector是H5中新增的查找dom元素的方法)

2. 匿名自執(zhí)行函數(shù)

見名思義,匿名自執(zhí)行函數(shù)首先是一個(gè)匿名函數(shù),但是這個(gè)函數(shù)是可以自己自動(dòng)執(zhí)行的,不需要借助其他的元素。

<input type="button" value="點(diǎn)擊" id="btn">
<script type="text/javascript">
//1,匿名函數(shù)的第一種實(shí)現(xiàn)方式
(function(data){
  // alert(data);
})("eee");
//2.匿名自執(zhí)行函數(shù)的第二種實(shí)現(xiàn)方式
(function(){
  // alert("fff");
}());
//3.匿名自執(zhí)行函數(shù)的第三種實(shí)現(xiàn)方式
!function(data){
  // alert(data);
}("hhh");
//4.匿名自執(zhí)行函數(shù)的第四種實(shí)現(xiàn)方式
var fun=function(data){
  alert(data);
}("iii");

從上面的代碼塊中我們可以總結(jié)出實(shí)現(xiàn)匿名自執(zhí)行函數(shù)的方法一般有四種。

3. 匿名自執(zhí)行函數(shù)的作用

①. 匿名自執(zhí)行函數(shù)最常見的作用是用于實(shí)現(xiàn)閉包的情況中。關(guān)于閉包的概念我會(huì)在后面的文章中詳細(xì)介紹。這里簡(jiǎn)單說(shuō)明一下閉包。閉包:閉包是js的一種特性,我們可以通過(guò)閉包實(shí)現(xiàn)函數(shù)內(nèi)外部的連接,并且可以使得函數(shù)的局部變量始終存在于內(nèi)存中。

②. 匿名自執(zhí)行函數(shù)還可以用于在js中模擬創(chuàng)建塊級(jí)作用域,即如果使用匿名自執(zhí)行函數(shù)將某些代碼包裹起來(lái)可以實(shí)現(xiàn)塊級(jí)作用域的效果,減少全局變量的數(shù)量,在匿名自執(zhí)行函數(shù)執(zhí)行結(jié)束后變量就會(huì)被內(nèi)存釋放掉,從而也會(huì)節(jié)省了內(nèi)存。

4. 匿名函數(shù)和匿名自執(zhí)行函數(shù)總結(jié)

匿名函數(shù)可以簡(jiǎn)單理解為沒(méi)有名字的函數(shù),常見的場(chǎng)景一共就有4種。

匿名自執(zhí)行函數(shù)可以簡(jiǎn)單理解為可以自己執(zhí)行的匿名函數(shù),實(shí)現(xiàn)匿名自執(zhí)行函數(shù)的方式一共有4種。

匿名自執(zhí)行函數(shù)的作用就是用于閉包和創(chuàng)建獨(dú)立的命名空間兩個(gè)方面。

更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《JavaScript常用函數(shù)技巧匯總》、《javascript面向?qū)ο笕腴T教程》、《JavaScript查找算法技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI