函数是可读,可维护和可重用代码的构建块。使用function关键字定义功能。以下是定义标准函数的语法。
function function_name() { // function body }
要强制执行该功能,必须调用它。这称为函数调用。以下是调用函数的语法。
function_name()
功能分类
函数可以分为返回函数和参数化函数。
返回功能
函数也可以将值与控制一起返回给调用者。这些函数称为返回函数。
以下是返回函数的语法。
function function_name() { //statements return value; }
-
返回函数必须以return语句结尾。
-
一个函数最多可以返回一个值。换句话说,每个函数只能有一个return语句。
-
return语句应该是函数中的最后一条语句。
-
参数化功能
参数是一种将值传递给函数的机制。参数构成函数签名的一部分。参数值在调用过程中传递给函数。除非明确指定,否则传递给函数的值的数量必须与定义的参数的数量匹配。
以下是定义参数化函数的语法。
function func_name( param1,param2 ,…..paramN) { ...... ...... }
默认功能参数
在ES6中,如果没有传递任何值或未定义参数,则该函数允许使用默认值初始化参数。下面的代码对此进行了说明。
function add(a, b = 1) { return a+b; } console.log(add(4)) // 输出 5
上面的函数默认将b的值设置为1。除非已明确传递值,否则该函数将始终认为参数b的值为1。
如果函数显式传递一个值,则该参数的默认值将被覆盖。
Rest参数
其余参数类似于Java中的变量参数。Rest参数不限制可以传递给函数的值的数量。但是,传递的值必须全部为同一类型。换句话说,rest参数充当相同类型的多个参数的占位符。
要声明rest参数,参数名称以三个句点为前缀,即扩展运算符。以下示例对此进行了说明
function fun1(...params) { console.log(params.length); } fun1(); //输出0 fun1(5); //输出1 fun1(5, 6, 7); //输出3
匿名函数
未绑定到标识符(函数名称)的函数称为匿名函数。这些函数在运行时动态声明。就像标准函数一样,匿名函数可以接受输入和返回输出。匿名函数最初创建后通常无法访问。
可以为变量分配匿名函数。这样的表达式称为函数表达式。
以下是匿名函数的语法。
注 –Rest参数应为