執(zhí)行上下文
- 范圍:一段 <script>或者一個(gè)函數(shù)
- 全局:變量定義,函數(shù)聲明
-
函數(shù):變量定義,函數(shù)聲明悼做,this,argumants
ps: “函數(shù)聲明” 和 “函數(shù)表達(dá)式” 的區(qū)別
不可這么寫,都是先定義,后執(zhí)行嘹屯。
不可這么寫,都是先定義从撼,后執(zhí)行.png
圖片.png
圖片.png
this
this 要執(zhí)行時(shí)才能確認(rèn)值州弟,定義時(shí)無法確認(rèn)
作為構(gòu)造函數(shù)執(zhí)行
作為對(duì)象屬性執(zhí)行
作為普通函數(shù)執(zhí)行
-
call apply bind
圖片.png
工作中一般用call - 函數(shù)聲明.png
當(dāng)做數(shù)組傳遞,沒有特別的.png
bind函數(shù)表達(dá)式.png
作用域
- js沒有塊級(jí)作用域
-
只有函數(shù)和全局作用域
圖片.png
推薦怎么寫
推薦怎么寫.png
作用域鏈
-
一個(gè)自由變量低零,一個(gè)自由變量不斷的向父級(jí)作用域去找婆翔,形成鏈?zhǔn)浇Y(jié)構(gòu)
圖片.png
閉包
- 函數(shù)作為返回值(demo)
-
函數(shù)作為參數(shù)傳遞 (思考)
圖片.png
// 100
圖片.png
圖片.png
// 100