首頁 >web前端 >前端問答 >javascript b包是什麼

javascript b包是什麼

藏色散人
藏色散人原創
2021-06-27 11:02:485107瀏覽

javascript b包是指閉包,而閉包是Javascript中比較重要的一個概念,是一種保護私有變數的機制,在函數執行時形成私有的作用域,保護裡面的私有變量不受外界幹擾。

javascript b包是什麼

本文操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

javascript b套件是什麼?

JavaScript 閉包

JavaScript 變數可以是局部變數或全域變數。

私有變數可以用到閉包。

全域變數

函數可以存取由函數內部定義的變數,如:

實例

function myFunction() {
    var a = 4;
    return a * a;
}

函數也可以存取函數外部定義的變數,如:

實例

var a = 4;
function myFunction() {
    return a * a;
}

後面一個實例中, a 是一個全域變數。

在web頁面中全域變數屬於 window 物件。

全域變數可套用於頁面上的所有腳本。

在第一個實例中, a 是一個 局部 變數。

局部變數只能用來定義它函數內部。對於其他的函數或腳本程式碼是不可用的。

全域和局部變數即便名稱相同,它們也是兩個不同的變數。修改其中一個,不會影響另一個的值。

Note 變數宣告時如果不使用 var 關鍵字,那麼它就是一個全域變量,即便它在函數內定義。

JavaScript 閉包

還記得函數自我呼叫嗎?該函數會做什麼?

實例

var add = (function () {
    var counter = 0;
    return function () {return counter += 1;}
})();
 
add();
add();
add();
 
// 计数器为 3

實例解析

變數 add 指定了函數自我呼叫的回傳字值。

自我呼叫函數只執行一次。設定計數器為 0。並返回函數表達式。

add變數可以當作函數使用。非常棒的部分是它可以存取函數上一層作用域的計數器。

這個叫作 JavaScript 閉包。它使得函數擁有私有變數變成可能。

計數器受匿名函數的作用域保護,只能透過 add 方法修改。

Note

閉包是一種保護私有變數的機制,在函數執行時形成私有的作用域,保護裡面的私有變數不受外界幹擾。

直覺的說就是形成一個不銷毀的堆疊環境。

【推薦學習:javascript高階教學

#

以上是javascript b包是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn