使用window.addEventListener添加/删除新的事件侦听器是否昂贵?

时间:2019-05-08 03:54:29

标签: javascript addeventlistener removeeventlistener

在需要时添加和删除事件侦听器真的很昂贵吗?还是只设置一次它们会更好吗?

例如,我有modalA和modalB。如果modalA是打开的,我真的只需要知道何时单击modalA外部以将其关闭。如果我始终都添加了事件监听器,即使它未打开,它也会触发modalB的close函数。

1 个答案:

答案 0 :(得分:1)

我认为您的答案取决于您的申请规模。

如果它很小(您可以控制您要做的地方的数量),那么可能就可以了。

如果很大(企业),或者您正在创建要用作基础结构的库,则最好添加和删除侦听器。 (例如,如果屏幕上显示100个对话框,则每次单击屏幕都会触发所有100个侦听器,这可能会严重影响性能)