例如,如果您编写一个插件,您可以这样做 $('#myDiv').doAction()
而不是 doAction($('#myDiv'))
。你必须承认,第一个看起来更直观。这是否有任何明显的缺点,例如性能下降?
最佳答案
您不会看到任何明显的性能影响,但有一个潜在的缺点:为代码命名空间非常有值(value),并且使其更易于维护(您可能知道)。将所有内容都放入 jQuery.fn
中可能不是最好的方法。
就我个人而言,我避免使用非常具体的东西(例如特定于应用程序的逻辑或其他东西)来扩展 jQuery,但全心全意地推荐它用于一般的 DOM 级别的东西(.hasAttr()
和.scrollHeight()
是我经常使用的两个)。原因是有更好的地方可以放置特定于应用程序的逻辑(例如,在负责应用程序该区域的模块中)。
一个简单的启发式:如果我将其设为公共(public)扩展,对其他人有用吗?或者这仅与这个特定项目相关?
也就是说,在代码中执行此操作没有具体问题。这更多的是一个语义问题:这是最好的地方吗?
关于javascript - 仅仅为了代码整洁而编写 jQuery 插件是个好主意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6807581/