JAVASCRIPT的必包实现浅析

本文通过实例详细解析了必包的概念及其在JavaScript事件绑定中的应用。必包使得内层函数可以引用外部函数的变量,即使外部函数已执行完毕。文章通过一个具体的事件绑定示例,展示了如何利用必包特性来实现不同事件的处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  对于JAVASCRIPT而言,无疑必包是其重要的组成部分!没有必包又怎么能够存在真正意义上的回调方法呢!但是在初学者刚刚接触必包概念的时候往往被其搞的云里雾里,不知所踪!下面通过必包概念和例子分析下必包!

  • 概念

必包意味着内层的函数可以引用存在于包围它的函数内的变量(即使外层函数的执行已经终止-回调方法),在循环中使用必包,这个必包允许你引用父函数中的变量,但提供的值并非是该函数创建时的值,而是在父函数内的最终值。

  • 实例
function test(){
  var textObj = document.getElementById("text");
  var events = ["click","keypress"];
  for(var i = 0; i < events.length; i++){
       (function(){
	var item = events[i];
	textObj["on" + events[i]] = function(){
		alert("你执行了"+item+"操作");
	};
         })();	
    }	
}
window.onload=test;

 

  • 结论

通过上例我们不难看出其主要实现的功能是为text文本框添加一个单击和键盘按下事件,但是在添加事件的实现方式上却略有不同,首先构建一个events数组绑定多个需要添加的事件名称,然后对这个数组进行循环遍历。在每次遍历中都要触发一个对象的存在,也就是自执行函数,这样我们将events[i]每次进行记录给item变量,这样这个变量就是依附于自执行函数对象的变量,是在每个对象中独立存在的!随意每次回调弹出对话框的时候这个回调函数总是依附于一个自执行对象的外部变量环境,故而可以实现不同的操作出现不同item值的效果!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值