我可以调用多少个匿名函数

时间:2019-11-25 06:29:15

标签: javascript jquery

我正在研究jquery。我有以下问题。我有一个页面依靠ajax并向用户报告。

所以基本上我已经创建了一个$(function() {})结构的文件。在该构造的内部,我正在使用标准的jquery功能来与模态窗口smth一起使用。喜欢

 $('.text-danger').hide();
    $(".btnajax").click(function() {})

但是现在我想在同一页上而不是在同一时间使用另一个模式窗口。有什么更好的方法:

  1. 在引用特定的按钮和表单操作时,是否继续使用相同的匿名函数构造并继续使用ID和类? 或
  2. 创建新的匿名函数构造?或

  3. 创建命名函数并在需要时调用它们吗?

我想从头开始正确构建,因此以后当我对JS更好时,就不必重新做所有事情。

谢谢。

1 个答案:

答案 0 :(得分:1)

  

继续使用相同的匿名函数构造并继续工作   引用特定按钮和表单时使用ID和类   行动?

这不是一个好主意,因为每次您要对按钮或表单执行某项操作时,它都会访问DOM,而这不必要地花费很多。

  

创建新的匿名函数构造吗?

实际上,匿名函数很少是一个好主意,因为它们会使您的代码难以阅读。想象一下,没有命名函数,并且所有内容都是匿名的。这将要求读者始终获取上下文,以便快速了解该功能在做什么

  

创建命名函数并在需要时调用它们?

特别是在重用该功能时,这是一个好主意。但就可读性而言,它也是个好主意,因为函数的名称描述了正在发生的事情,因此,当某人(您)在一段时间后再次阅读代码时,无需研究函数的主体即可知道发生了什么。

除此之外:

  

我想从头开始正确构建,因此以后当我对JS更好时,就不必重新做所有事情。

我可以告诉你:一旦需求发生变化,您就不会避免重写部分代码。这就是编码的意义所在。您无法预见到您的应用程序需要进行的所有更改。如果您尝试这样做,那么最终您将拥有过度设计的代码。相反,您应该遵循YAGNI。 一般而言,对于不仅仅是5个按钮和一个表单的所有内容,带jQuery的JS文件并不是解决之道。那些时代结束了。切换到可以使模型,(模型)视图和控制器之间分离的关注点的东西。