亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js閉包??赐炅苏n程還不是很清楚。

js閉包??赐炅苏n程還不是很清楚。

黑女2008 2016-08-30 09:09:27
誰能給我講下閉包的具體用法。最好用簡單的例子說明下,謝謝。
查看完整描述

4 回答

已采納
?
Ewall_

TA貢獻27條經驗 獲得超9個贊

先說兩個概念:

匿名函數:就像是變量賦值語句;像 var functionName=function(){ };這種就是匿名函數。

閉包:指有權訪問另一個函數作用域中的變量和函數。

一般來說常見的這種,在一個函數內部創建另一個函數就是一個閉包。

function?functionName1(){
????var?example="something";
????function?functionName2(){
????????//函數體
????};
};

functionName2里面的函數體有權訪問到它不包含的變量example;此變量在另一個函數中,所以functionName2就是一個閉包。


查看完整回答
1 反對 回復 2016-08-30
?
qq_奈奈奈_03699702

TA貢獻19條經驗 獲得超5個贊

?(function(){
????????var?arr=[];
????????(function(){
????????????console.log(j);//undefined
????????})();
????????var?j=2;
????????function?go(){
????????????console.log(j);//2
????????}
????????for(var?i=0;i<5;i++){
????????????arr[i]=function(){
????????????????console.log(i);
????????????}
????????}
????????return?arr[0]();//5
????})();

高級程序設計相關部分反復看。

查看完整回答
2 反對 回復 2016-08-30
?
鱸先森

TA貢獻5條經驗 獲得超2個贊

閉包

閉包是指有權訪問另一個函數作用域中的變量的函數。創建閉包的常見方式就是在一個函數內部創建另一個函數。

function outer() {
? ?var localVal = 30;
? ?return function() {
? ?//在函數內創建一個匿名函數,這個函數可以通過作用域鏈可以訪問外部的變量
? ? ? ?return localVal;
? ?}
}
var func = outer();
console.log(localVal);// localVal is not defined(…)
//外部無法訪問函數內的變量。
func();//30

之前記的筆記,你可以參考一下

查看完整回答
反對 回復 2016-08-30
?
echo_kinchao

TA貢獻600條經驗 獲得超86個贊

實踐是最好的老師

查看完整回答
反對 回復 2016-08-30
  • 4 回答
  • 0 關注
  • 2142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號