Javascript函数是一个重要的组成部分Javascript标准。它们允许您创建具有特定名称和行为的可重用代码块,这样您就不必多次重复相同的事情,这对代码的可读性和维护非常有帮助。

Javascript函数基础

Javascript函数总是以保留字“function”开头,后面跟着函数名。函数的参数在函数名后面的括号中。最后,与函数名相关联的代码块必须出现在括号之后。

函数exampleFunction(param1, param2){…说明……}

函数名可以包括字母数字字符(A-Z、A-Z和0-9)、下划线和美元符号。这与Javascript对变量的命名要求相同。

当Javascript遇到函数定义时,它会将函数的代码块与其名称关联起来。Javascript程序不会执行函数代码块中的指令,除非被明确告知这样做,这个过程称为调用。

调用上面的函数,假设两个参数都是整数(整数),看起来是这样的:

exampleFunction(1、2);

函数可以通过称为return语句的特定代码行向Javascript程序返回一个值,该语句在保留字“return”之后指定一个值。return语句阻止函数的其余部分被执行。

函数exampleFunction(param1, param2){…说明……返回true;}

函数中不需要return语句,但是程序员通常会在函数中放入复杂的指令,这样他们就可以返回计算值,而不需要重复代码。在函数中定义的任何变量(称为局部变量)只存在于该函数中,因此复杂的过程仍然是孤立的。

您可以用函数返回的值来设置变量的值。不要尝试在没有返回语句的函数中设置变量的值。

让myVariable = exampleFunction(1,2);

用Javascript函数组织代码

Javascript不要求您用函数编写代码,但函数使复杂的代码更容易维护和重用。除了只需要几行代码的简单程序之外,任何其他程序都可能从函数中获益。

与许多其他编程语言不同,Javascript允许在函数中声明函数。内部函数不会影响外部函数之外的代码,但外部函数可以根据需要多次调用内部函数。

函数外部{函数内部(){…说明……}……说明……内部();…更多的指令…}

当一个函数被包装在另一个函数中,产生的代码结构称为“闭包”。闭包是Javascript创建半私有变量和函数的一种方式,程序的其他部分不应该访问这些变量和函数。

对于什么应该加入函数,什么不应该加入函数,并没有硬性的规则。不同的程序员可能会将相同的代码行组织成非常不同的函数,或者根本不将它们组织成函数。

函数和闭包的意义在于使代码尽可能易读、可维护和高效。将复杂的代码拆分为多次重用的函数可能会很有帮助,例如,将简单的代码拆分为许多函数可能会在调用函数时创建大量额外的工作,从而影响代码性能。

编写Javascript函数的最佳实践

简短的描述性名称

在编写Javascript函数时,尽量使函数名简短且具有描述性。一个简短的、描述性的名称有助于维护和调试,因为很容易一眼就知道函数的作用。

在下列函数名中,第三个函数名最有用,因为它既简短又描述性强。创建一个长函数名通常很有诱惑力,这样您就可以尽可能具有描述性,但周围代码中的上下文线索通常意味着您不需要担心创建长函数名。

铁();FusionEnergyOutputInMegaElectronVolts ();fusionEnergy ();

如果您担心函数名可能有歧义,可以在函数定义附近添加注释,以便以后引用。有时,您不需要在函数名中添加很多细节,就可以理解函数的意义。

//氘+氚=氦| 1H2 + 2He3 = 1p1 + 2He4 (+ 18.3 MeV) // https://personal.ems.psu.edu/~radovic/Chapter14.pdf fusionEnergy();

特定功能的行为

编写函数时的一般规则是确保每个函数都做一件特定的事情。这并不意味着每一行代码都需要一个不同的函数;相反,要确保函数中的所有内容都是唯一的,且定义清晰。

例如,当创建一个进行数值计算的程序时,您不会希望一个函数具有两个复杂的计算,比如斐波那契数列和一个代码块中的阶乘。最好为每个计算都有一个单独的函数,然后在必要时从第三个函数调用它们:

函数factorial(val){…说明……} function fibonacci(num1, num2){…说明……}函数基础(num1, num2){阶乘(num1 + num2);斐波纳契(num1, num2);}

以这种方式构造代码,可以清楚地看出代码的哪些部分在执行不同的计算。如果您想在其他地方重用计算,您所要做的就是调用单独的函数。

结论

Javascript函数帮助开发人员保持代码的组织性,以便于维护和调试。规划功能好可以最小化代码重复,同时使程序易于理解。

参加我们的介绍编程纳米学位程序188金宝搏安不安全今天学习更多关于Javascript函数和其他编程概念!

开始学习