DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> JavaScript中的閉包
JavaScript中的閉包
編輯:關於JavaScript     

1、什麼是閉包

閉包,官方對閉包的解釋是:一個擁有許多變量和綁定了這些變量的環境的表達式(通常是一個函數),因而這些變量也是該表達式的一部分。

簡單的說,Javascript允許使用內部函數---即函數定義和函數表達式位於另一個函數的函數體內。而且,這些內部函數可以訪問它們所在的外部函數中聲明的所有局部變量、參數和聲明的其他內部函數。當其中一個這樣的內部函數在包含它們的外部函數之外被調用時,就會形成閉包。

閉包的特點

1 函數嵌套函數

2 函數內部可以引用外部的參數和變量

3 參數和變量不會被垃圾回收機制回收

一般函數執行完畢後,局部活動對象就被銷毀,內存中僅僅保存全局作用域。但閉包的情況不同!

function fn(){
var a = ;
function fn(){
//可以訪問fn中定義的a值
alert( a++ );
}
fn();
}
fn(); //
fn(); // 
function fn(){
var a = ;
function fn(){
//可以訪問fn中定義的a值
  alert( a++ );
}
return fn;//
}
var f = fn();
f(); // 執行完後a還在內存中
f(); //
f = null; //a被回收

以上所述是小編給大家介紹JavaScript中的閉包,希望對大家有所幫助!

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved