溫馨提示×

溫馨提示×

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

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

JavaScript中立即執(zhí)行函數(shù)的使用方法

發(fā)布時間:2020-09-26 10:27:39 來源:億速云 閱讀:137 作者:小新 欄目:web開發(fā)

小編給大家分享一下JavaScript中立即執(zhí)行函數(shù)的使用方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

我們先來簡單看一下函數(shù)是什么?

函數(shù)是由事件驅(qū)動的或者當(dāng)它被調(diào)用時執(zhí)行的可重復(fù)使用的代碼塊。

換句話說,如果你多次使用某個函數(shù),只要調(diào)用就可以簡單地使用。

使用fonction,定義如下。

fonction 函數(shù)名(){
執(zhí)行的代碼
}

我們再來看一下什么是匿名函數(shù)?

顧名思義,匿名函數(shù)是其功能可以在沒有函數(shù)名稱的情況下定義的函數(shù)

使用匿名函數(shù)還具有在使用高階函數(shù)時簡化代碼的優(yōu)點。

高階函數(shù)是一個可以將函數(shù)本身作為參數(shù)或返回值處理的函數(shù)。

在高階函數(shù)中,作為參數(shù)的函數(shù)通常只使用一次,因此i可以通過使代碼成為匿名函數(shù)來使代碼變得簡單。

此外,由于你不需要通過使其成為匿名函數(shù)來定義全局范圍名稱,因此還可以減少由于復(fù)制函數(shù)名稱而導(dǎo)致的錯誤。

正常函數(shù)和匿名函數(shù)的比較

讓我們根據(jù)以下程序比較正常函數(shù)和匿名函數(shù)。

function( ) {
 執(zhí)行的代碼
}

正常的函數(shù)(命名的函數(shù))

代碼如下

<!DOCTYPE html>
<html>
  <head>
    <meta charset = "utf-8">
    <title>JavaScript</title>
  </head>
  <body>
    <script>
      function sum(a,b){
        var result = a + b;
        return result;
      }
      var answer = sum(1,2);
      console.log(answer);
    </script>
  </body>
</html>

使用console.log調(diào)用時,根據(jù)參數(shù)1和2 輸出“3”。

JavaScript中立即執(zhí)行函數(shù)的使用方法

匿名函數(shù)

接下來我們用匿名函數(shù)來編寫相同函數(shù)

代碼如下

  <script>
      var sum = function (a,b){
    var result = a + b;
    return result;
  }
  var answer = sum(1,2);
  console.log(answer);
    </script>

在一個命名的函數(shù)中,我們首先定義函數(shù)sum,我們稍后將sum指定給變量answer,并使用參數(shù)1和2調(diào)用。

相反,在匿名函數(shù)中,在變量中可以直接輸入函數(shù)的定義,因此,能夠?qū)⒑瘮?shù)定義本身存儲在變量中也是匿名函數(shù)的優(yōu)點。

結(jié)果是一樣的

JavaScript中立即執(zhí)行函數(shù)的使用方法

最后,我們來看看立即執(zhí)行函數(shù)的用法

立即函數(shù)是一個立即執(zhí)行函數(shù)表達式,在英語中稱為IIFE(立即調(diào)用函數(shù)表達式)。

立即函數(shù)被定義后立即執(zhí)行。

因此,它被稱為立即執(zhí)行功能。

使用立即函數(shù),只要定義函數(shù)就可以立即執(zhí)行。

局部變量在函數(shù)中聲明,并在整個聲明的函數(shù)中使用。

全局變量是在全局范圍內(nèi)聲明的變量,因此它們可以在JavaScript程序中的任何位置使用。

例如,全局變量在函數(shù)外部聲明,那么它既可以在函數(shù)內(nèi)部使用也可以在外部使用。

我們下面來看立即函數(shù)的示例

var聲明一個變量,從functions開始的函數(shù)定義本身就可以立即執(zhí)行。

代碼如下

<script>
    var sum = (function (a,b){
    var result = a + b;
    return result;
  })(1,2);
  console.log(sum);
    </script>

我們通過立即給函數(shù)定義提供參數(shù)來執(zhí)行它。

到目前為止,我們已將函數(shù)sum分配給變量answer并傳遞參數(shù)。將其省略為變量answer,這意味著你可以將參數(shù)直接傳遞給已定義的函數(shù)并執(zhí)行內(nèi)容。

由于你不需要使用var answer = sum(1,2);來調(diào)用該函數(shù),因此該程序非常流暢。

運行結(jié)果如下:結(jié)果也是3

JavaScript中立即執(zhí)行函數(shù)的使用方法

以上是JavaScript中立即執(zhí)行函數(shù)的使用方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

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

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

AI