专栏中心

EEPW首页 > 专栏 > 扣丁学堂Java培训之JS面向对象代码分享

扣丁学堂Java培训之JS面向对象代码分享

发布人:扣丁客 时间:2020-12-15 来源:工程师 发布文章

不管学习哪门开发语言,总的目的都是为了用代码变现出来,今天就直接贴一段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英寸

NI PAC平台引领工业控制发展新技术

视频 2009-07-17

Tektronix 公司产品梗概

视频 2009-07-20

莱迪思半导体携手EXOR International和TrustiPhi推出网络韧性参考套件,简化安全设备开发流程

戴尔裁员万人,硅谷愈发担忧AI冲击

2026-03-17

贸泽开售适合边缘工业自动化应用的 Weidmuller u-control M3000和M4000可编程自动化控制器

IEEE:网络安全从业者正在如何使用生成式AI

智能计算 2026-03-17

IAR 扩展了嵌入式开发平台,提供 LTS 服务

Brilliant Labs与Alif Semiconductor合作开发智能眼镜

如何精确的使用示波器进行测量!

视频 2009-07-20

小偷之二

jackwang 2004-02-06

IBM半莫比乌斯分子展现了量子化学的优势

Littelfuse推出用于大电流、高隔离应用的CPC1343G OptoMOS®固态继电器

数据采集技术第二讲:配置管理软件MAX

更多 培训课堂
更多 焦点
更多 视频

技术专区