"); //-->
不管学习哪门开发语言,总的目的都是为了用代码变现出来,今天就直接贴一段js面向对象的代码,供大家学习。

<scripttype="text/javascript">
//创建箱子类
functionBox(option){
varself=this;
var_option={
height:12,
width:12
};
//合并参数对象:记得引用Jquery.js
$.extend(_option,option);
this.height=_option.height;
this.width=_option.height;
//绑定事件列表
var_events={};
//创建一个方法,并带有回调函数
this.push=function(option,callback){
if(option.height>this.height){
console.error("overheight",this);
return;
}
if(option.width>this.width){
console.error("overwidth",this);
return;
}
//判断是否有回调函数
if(callbackinstanceofFunction)
//调用回调函数,并给它传值(参数:_option)
callback.call(this,_option);
}
//绑定事件
this.on=function(name,event){
if(name==null||!name)
returnnull;
if(!(eventinstanceofFunction))
if(self[name]instanceofFunction){
returnself[name]();
}
if(eventinstanceofFunction)
_events[name]=self[name]=function(){
event.apply(this);
returnthis;
}
}
//解除绑定事件
this.unbind=function(name){
deleteself[name];
delete_events[name];
//链式表达式
returnthis;
}
}
//创建box1对象
varbox1=newBox();
//创建box2对象
varbox2=newBox();
//调用方法
box1.push({
height:12,
width:12
//回调函数
},function(option){
console.log("push回调函数已调用..",option);
});
//动态给对象绑定事件
box1.on("click",function(){
this.width+=10;
console.log("width递增10,click事件被调用..",this.width);
});
box1.on("heihei",function(){
console.log("heihei事件被调用..",this.width);
});
//事件普通调用
box1.click();
//链式表达式调用方法
box1.on("click").click().heihei().on("heihei");
//打印box1的宽度
console.log(box1.width);
//打印box2的宽度
console.log(box2.width);
//解除绑定事件
box1.unbind("heihei");
//测试解除
box1.heihei();
</scrip以上就是JS面向对象代码的详细分析,通过以上代码的学习,是否对Java编程的学习更加感兴趣了呢?我们不仅有Java编程学习的培训,还有其他十几种编程语言,线上线下相结合的方式进行授课学习,课堂随堂指导,课后项目老师辅导学习,手把手的教学方式,你还在等什么呢?赶快加入扣丁学堂java技术交流群:487098661。微 信 号:codingbb
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
拆解:索尼 Access 无障碍手柄
拆解:苹果 iPad Air 11英寸
AVR单片机的应用
NI PAC平台引领工业控制发展新技术
Tektronix 公司产品梗概
莱迪思半导体携手EXOR International和TrustiPhi推出网络韧性参考套件,简化安全设备开发流程
555组成带“看门狗\"的延时电路
【问】一个简单的bootloader
AVR单片机定点数运算程序设计及数制转换
不知道我的显卡质量怎么样
555D/A变换双相互补频率产生器电路
戴尔裁员万人,硅谷愈发担忧AI冲击
贸泽开售适合边缘工业自动化应用的 Weidmuller u-control M3000和M4000可编程自动化控制器
IEEE:网络安全从业者正在如何使用生成式AI
AVR单片机浮点数运算程序设计
555触模式开关电路
IAR 扩展了嵌入式开发平台,提供 LTS 服务
Brilliant Labs与Alif Semiconductor合作开发智能眼镜
AVR单片机串行接口及应用
如何精确的使用示波器进行测量!
小偷之二
IBM半莫比乌斯分子展现了量子化学的优势
利用Wave-Inspector进行数字系统查障
556组成的4h定时电路
[求助] 关于:4510B SRAM
【问】一个简单的bootloader
Littelfuse推出用于大电流、高隔离应用的CPC1343G OptoMOS®固态继电器
数据采集技术第二讲:配置管理软件MAX
555声控继电器电路
AVR单片机开发工具