在學習閉包相關的時候,發現有兩個詞的概念我搞不清楚:就是作用域(scope)和活動對象(activation object)問題1:這兩個本質上是同一個東西么?還是說“理解為一個函數的作用域等于自身活動對象加上父級作用域”?問題2:看到下面的三句有點亂...所以當外部函數返回時,銷毀要回收的是什么?由閉包保存攜帶的是什么?一、"在另一個函數內部定義的函數會將包含函數(即外部函數)的活動對象添加到它的作用域鏈中。"二、"當外部函數返回后,其執行環境的作用域鏈會被銷毀,但它的活動對象仍然會留在內存中;直到匿名函數被銷毀后, 外部函數的活動對象才會被銷毀。"三、"由于閉包會攜帶包含它的函數的作用域,因此會比其他函數占用更多的內存。"
關于Javascript的閉包概念問題
慕容森
2018-09-05 13:25:55