2019年10月20日 星期日

JS 學習 closure (封包)

4-46 5:06  6:45

1.目的: 就算執行環境消失,仍確保函式可以取到要用的變數(7:50)


    --->result
    仍可以跑出結果

   --->執行完return時,greet()執行環境就離開執行堆,但language   "hello" 記憶體仍留著






    --->JS引擎確保能在函式能在範圍鍊找到需要用的變數(稱closure)




範例


   --->result

   --->不是 0 1 2
(11:20 只能告訴你現在記憶體的值是多少,而不是創造函數時的值)
(11:55 console.log其實不是在他所在地方執行,而是當呼叫函式時執行)

6:30
array.push只是創造一個函數物件,還沒有回傳值!!!
console.log(i)不是在此執行,for的迴圈還在繼續跑,當i = 3,跳出迴圈
--->回傳值

   --->ct[ 0 ]( );      ct[ 1 ]( );       ct[ 2 ]( );  都是同個外部參考



  ---> 如何得到0 1 2     (15:25)


   --->使用立即回呼函數

範例二4-48 (function factiory)
7:09
10:40 就算執行環境消失,JS仍知道要指到哪裡


--->

   --->result



沒有留言:

張貼留言

vue的筆記

 目錄 //mvvm //綁定 //資料綁定的方式 //修飾符 //按鍵修飾符 //縮寫 //class 動態切換 //computed //表單裡各元素的v-model綁定 //元件: 能夠獨立儲存自己的狀態 //vue 的生命週期 //切換className的各種寫法 //v...