ES6 中的函数默认值及其使用技巧

阅读时长 4 分钟读完

在 JavaScript 中,函数默认值是非常实用的一个特性。在以前的 JavaScript 版本中,我们必须手动检查函数参数是否存在并赋予默认值,这样很容易出错。而在 ES6 中,我们可以通过函数默认值的方式来更加简单地处理函数参数。

函数默认值的基本语法

在 ES6 中,我们可以使用等号(=)来为函数参数设置默认值。例如:

上面的函数 greet 中为参数 name 设置了默认值为 'world'。这意味着如果调用 greet 函数时不提供任何参数,name 的值将是 'world'。

默认值表达式和默认对象

除了基本值之外,我们也可以使用表达式或默认对象作为参数的默认值。例如:

-- -------------------- ---- -------
-------- ------ - - -- -
  ------ - - --
-
-------------------- -- -- -
------------------ ---- -- -- -

-------- ----------- - --- -
  ---------------------
-
------ -- -- --
----- ---- ----- --- -- -- - ---- ----- -

在上面的例子中,我们分别使用了表达式 b = a 和对象 {} 作为参数的默认值。

函数默认值的使用技巧

使用函数默认值可以让我们的代码变得更加简洁和易读。下面是一些函数默认值的使用技巧:

1. 覆盖 undefined 和 null 值

当参数的值为 undefined 或 null 时,使用默认值可以避免在函数内部的判断。例如:

2. 避免出现参数个数不匹配的问题

在以前的 JavaScript 中,我们必须手动检查函数参数是否存在并赋予默认值。而在 ES6 中,我们可以通过函数默认值的方式来更加简单地处理函数参数。这样就可以避免出现参数个数不匹配的问题。例如:

在上面的例子中,由于 b 的默认值为 a,因此当只传递一个参数时,b 的值将与 a 相等。

3. 函数参数可以是函数调用的返回值

在函数默认值中,我们可以使用函数调用的返回值作为参数的默认值。例如:

在上面的例子中,我们使用函数 randomNumber() 的返回值作为参数 num 的默认值。每次调用函数 foo() 时,num 都会得到不同的随机数值。

4. 实现函数参数的可选性

在 JavaScript 中,函数参数是默认为 undefined。使用函数默认值可以实现函数参数的可选性。例如:

在上面的例子中,我们使用了默认值来实现第二个参数 message 的可选性。

总结

本文介绍了 ES6 中函数默认值的基本语法、默认值表达式和默认对象,并提供了函数默认值的使用技巧。使用好函数默认值能够让我们的代码更加简洁和易读,避免出现参数个数不匹配的问题,实现函数参数的可选性和提升代码的可维护性。

示例代码:https://codepen.io/pen/?editors=0012

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6469d568968c7c53b09a3550

纠错
反馈