在JavaScript自定义事件或普通函数调用中有什么更好的?

Adi*_*tia 10 javascript jquery javascript-events custom-events

在Js代码中,如果有两个js对象(一个处理UI(例如一个表单)和另一个向服务器发送请求.

使用自定义事件或正常函数调用在这些组件之间进行交互的更好方法是什么.

例如.

  clickForm = function(){
      validateForm();
      $(document).trigger("submitForm",{"userData":userData});//Event submitForm listened by formManager submitForm method.
  }
Run Code Online (Sandbox Code Playgroud)

要么

clickForm = function(){
     validateForm();
     formManager.submitForm(userData);
  }
Run Code Online (Sandbox Code Playgroud)

clickForm方法是UI组件的一部分,它负责管理HTML代码的UI交互.此功能通常在单击提交按钮时调用.

submitForm方法是核心Object的一部分,其职责是向服务器发出请求,解析响应,然后将结果发送到UI组件.

这两种方法中的哪一种是更好的互动方式.任何建议?

T.J*_*der 7

"更好"是一个棘手的概念.:-)

使用事件更松散地耦合对象,这通常被认为是一件好事,并且允许更多的可能性不仅仅是两个对象协作(例如,事件的多个订阅者;相反,对象可以订阅两个来源的事件).

事件机制将有更多的开销,这在大多数情况下无关紧要(当然不是在提交表单时),但可能在一小类案例中(每秒发生数千次).事件机制也可能有点难以读取和调试.