首頁 > web前端 > js教程 > 主體

JavaScript閉包實例的簡單應用

巴扎黑
發布: 2017-09-02 13:50:28
原創
1658 人瀏覽過

這篇文章主要為大家詳細介紹了JavaScript閉包的簡單應用,具有一定的參考價值,有興趣的小夥伴們可以參考一下

閉包定義

#在JavaScript中,當一個內部函數被其外部函數以外的變數引用時,就形成了一個閉包。簡單說,閉包就是能夠讀取其他函數內部變數的函數。

閉包的作用:

1. 可以讀取函數內部的變數
2. 讓這些變數的值始終保持在記憶體中。
閉包簡單應用

例一:


#
function a() { 
  var i = 0; 
 function b() {
  console.log(++i);
 } 
 return b;
}      
var c = a();  //执行完var c=a()后,变量c指向了函数b,再执行c()后就会显示i的值(为1)。
c();    //输出1
登入後複製

範例二:


(function() { 
var i = 0; 
 return function(){
   console.log(++i);
  }
})()();     //输出1
登入後複製

例三:


(function(i) { 
 return function(){
   console.log(++i);
  }
})(0)();     //输出1
登入後複製

範例四:


for (var i = 0; i < 3; i++) {
 setTimeout((function(i) {    
  return function() {
   console.log(i);
  };
 })(i), 2000);
 console.log(i+10);
}      //输出 10 11 12 (隔两秒后)0 1 2
登入後複製

例五:


for (var i = 0; i < 3; i++) {
 setTimeout((function(i) {
  return function() {
   console.log(i);
  };
 })(i)(), 2000);
 console.log(i+10);
}      //立即输出 0 10 1 11 2 12 ,(两秒后运行程序结束)
登入後複製

以上是JavaScript閉包實例的簡單應用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板