React-[useEffect篇]- Cleanup函式


如何使用useEffect的cleanup函式

認識閉包

閉包(Closure)是一個在計算機科學和程式設計中常見的概念,特別是在支援函數式編程的語言中,如JavaScript、Python等。閉包是一種函數和其周圍環境的結合,其中環境包含了函數被創建時可訪問的所有變數。

閉包的主要特點包括以下幾點:

函數內嵌在其他函數中:閉包通常是一個函數,它被定義在另一個函數內部,稱為外部函數。

函數可以訪問外部函數的變數:閉包可以訪問外部函數中定義的變數,即使外部函數已經執行完畢。

保持狀態:閉包允許在外部函數完成執行後,保持對其內部變數的訪問權限,這使得在後續的函數調用中能夠保持狀態。

閉包在很多情況下都非常有用,特別是在事件處理、回調函數、異步編程等情境中。通過閉包,你可以將數據和函數打包在一起,以便更靈活地處理程序邏輯。

以下是一個JavaScript的閉包示例:

javascript
Copy code
function outerFunction() {
  var outerVariable = 10;

  function innerFunction() {
    console.log(outerVariable); // 內部函數訪問外部變數
  }

  return innerFunction;
}

var closure = outerFunction(); // 創建閉包
closure(); // 調用閉包,輸出 10

在這個示例中,innerFunction 是一個閉包,它可以訪問 outerFunction 中的 outerVariable,即使 outerFunction 已經執行完畢。閉包使得我們可以在稍後的時間點調用 closure() 來訪問 outerVariable 的值。








你可能感興趣的文章

NoSQL, Transaction, ACID and Lock

NoSQL, Transaction, ACID and Lock

Leetcode  JS 2623. Memoize 簡易筆記

Leetcode JS 2623. Memoize 簡易筆記

Python 程式設計入門共學營學習計劃

Python 程式設計入門共學營學習計劃






留言討論