課程
/前端開發
/JavaScript
/電商網站前端架構
(function(){})()這個為什么是閉包?
2017-02-09
源自:電商網站前端架構 2-3
正在回答
(function(){})()這不叫閉包這叫立即執行函數,所謂閉包,要拆成閉和包,閉指代不想暴露給外部的數據,包指代將數據打包出去暴露給外部;之所以這么說原因在于JS的函數作用域,函數內部的變量函數外部無法訪問,這形成了閉;函數外部想得到函數內部的變量,可以通過某些方法譬如通過return等語句將內部的變量暴露出去,這形成了包;因而——立即執行函數只是函數的一種調用方式,和閉包沒有必然的聯系;閉包是和作用域扯上關系的,而(function(){})()是函數聲明完就執行,只是有時想要用到閉包那么可以用(function(){})()來構成閉包,而不是(function(){})()是閉包。把你的問題說的通俗點(function(){})()假設是新東方廚師學校,那么按你的問題就是(function(){})()為什么是廚師,然而廚師也可以是function a(){}舊東方廚師學院出來的,只是同為廚師(閉包)兩者去了不同的學校(函數)而已,但改變不了他們是廚師的本質。
這問題.... ? ?1加1 為啥等于2?
哈哈348746 提問者
舉報
整個項目組織、開發、發布等流程,教你如何創建一個電子商務網站
1 回答?閉包.....閉包指的是函數內聲明的匿名函數,可以用來傳遞函數內局部變量
1 回答mstmpl這個是什么模板???
1 回答這是什么編輯工具?
1 回答這是什么看圖軟件
1 回答這里的“模塊”指的是什么
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-03-06
(function(){})()這不叫閉包這叫立即執行函數,所謂閉包,要拆成閉和包,閉指代不想暴露給外部的數據,包指代將數據打包出去暴露給外部;之所以這么說原因在于JS的函數作用域,函數內部的變量函數外部無法訪問,這形成了閉;函數外部想得到函數內部的變量,可以通過某些方法譬如通過return等語句將內部的變量暴露出去,這形成了包;因而——立即執行函數只是函數的一種調用方式,和閉包沒有必然的聯系;閉包是和作用域扯上關系的,而(function(){})()是函數聲明完就執行,只是有時想要用到閉包那么可以用(function(){})()來構成閉包,而不是(function(){})()是閉包。把你的問題說的通俗點(function(){})()假設是新東方廚師學校,那么按你的問題就是(function(){})()為什么是廚師,然而廚師也可以是function a(){}舊東方廚師學院出來的,只是同為廚師(閉包)兩者去了不同的學校(函數)而已,但改變不了他們是廚師的本質。
2017-02-15
這問題.... ? ?1加1 為啥等于2?