javascript自定义事件和方法的区别

2025-03-18 02:32:35
推荐回答(1个)
回答1:

一:首先看一下自定义事件和方法的实现方式

1. Javascript的自定义事件:
通常我们定义自定义事件的方法为:
a. 定义 : this.MyClick = null;
b.触发事件:在需要触发此事件的时候执行
if(this.MyClick ){ //判断是否有定义,是防止其他模块没有注册此事件,导致调用Myclick()的时候出现exception

this.MyClick (); //事件触发

}

b.绑定事件:其他模块可以监听此事件,当此事件发生的时候,可以执行自己模块所要执行的内容;
mymodule.MyClick = function(){}; //mymodule为触发MyClick事件的模块的实例对象;

2. Javascript方法
定义模块的时候,会定义相应的方法,其他模块可以调用;
模块a定义方式:this.myMethod = function(){};
其他模块使用方式: mymodule.myMethod(); //mymodule为模块a的实例对象

二:下面看一下他们两者的区别
从调用方式来看代码是一样的。
但是调用的内容以及时机是完全不一样的;
其实,自定义事件在javascript的概念中是没有的,但是javascript有回调的概念,所以,自定义事件实质是回调,在自己的模块注册这样的事件,当事件触发时,执行此事件的内容;自定义事件是一种逻辑的概念,它是回调但是执行方式和事件一样,所以称之为自定义事件;
而且事件执行的内容是注册事件模块的内容;
而方法的执行内容是定义此方法的模块的内容;
方法并不是回调。