我对JS比较陌生,但我非常清楚在Web开发中性能是一个非常重要的问题,因此这个问题:
我已经搜索并找到了一些相关的主题(例如:Javascript pattern: Conditional event handler),但我发现这一点令人困惑,因为我的方案简单得多,并且不涉及任何高级概念,例如类。
例如,上下文,想象一下我的网站包含各种类型的网页'由不同的身体类别定义="类型"标签。为清楚起见,我们可以有body class =" member-details",body class =" club-details"和body class =" random-page-type"。想象一下,有很多,比如说20种可能的身体类型。
考虑一种情况,其中我可能希望将一个特定的点击事件处理程序绑定到一个元素,如果该主体是某些特定类型而另一个是否是其他类型。
问题是:
在处理程序中将处理程序置于条件或条件中是否更好?为清楚起见,伪代码:
1)事件处理程序内的条件
ON DOCUMENT READY {
if page type is 'club-details' || page type is 'x' || page type is 'y' {
bind function1 ();
}
}
2)条件内的事件处理程序
if page type is 'club-details' || page type is 'x' || page type is 'y' {
ON DOCUMENT READY {
bind fuction1();
}
}
这是一个非常简化的示例,但我想我要求提供关于始终绑定事件的性能的信息,如示例1所示,或者决定是否通过迭代条件进行绑定,如示例2所示?
答案 0 :(得分:1)
由于Javascript事件是异步执行的,因此您的示例不是性能而是内存。第二个示例将比第一个示例占用更少的内存,因为绑定的事件较少。与服务器端相比,客户端性能并不重要。话虽这么说,你应该考虑编写漂亮可读的代码而不是琐碎的性能优势。 Javascript现在非常快。