JavaScript闭包的简单应用

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 ,(两秒后运行程序结束)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

tag:闭包简单电脑软件Javascript

相关内容