javascript中闭包的2种经典用法

页面导航:首页 > 网络编程 > JavaScript > javascript中闭包的2种经典用法

javascript中闭包的2种经典用法

来源: 作者: 时间:2016-02-19 09:19 【

闭包这个东西,网上有很多介绍资料。个人看了很多,还是一知半解。这里不做理论介绍,直接给出2个例子。 代码1:记录函数被调用的次数function a(){var i = 0;function b(){return ++i;}return

闭包这个东西,网上有很多介绍资料。个人看了很多,还是一知半解。这里不做理论介绍,直接给出2个例子。

代码1:记录函数被调用的次数

function a()
{
	var i = 0;
	function b()
	{
		return ++i;
	}
	return b;
}

var c = a();
c();//1
c();//2

这种方式类似C语言中的private static变量,能够保持局部变量的内存不释放。


代码2:正确给DOM注册事件处理函数


	
	
	
	
	
	<script type="text/javascript">   
	

		var buttons = document.getElementsByTagName("input");  
		for (var i = 0; i < buttons.length; i++) 
		{    
			// 方式1:i的值一直是3
			//buttons[i].onclick = function() {    
			//	console.log(i + " was clicked.");    
			/
                
                
Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<