在 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