Javascript 是一种非常灵活的语言,其中函数作为基本单元的重要性不言而喻。函数参数默认值是 ES6 新增的特性,使用起来可以减少代码量,提高代码可读性,本文将详细介绍如何使用函数参数默认值进行函数调用。
为什么要使用函数参数默认值
在 Javascript 函数调用中,为函数的所有参数都传递值是默认的,如果需要对某个参数进行默认值处理,我们通常会这样写:
function add(x, y) { x = x ? x : 0; y = y ? y : 0; return x + y; }
这种方式的缺点是代码量较多,可读性差,而 ES6 中的函数参数默认值特性可以解决这个问题,可以让我们在函数声明时,通过参数默认值来达到同样的效果,避免了多余的代码。
如何使用函数参数默认值进行函数调用
要使用函数参数默认值进行函数调用,只需要在函数参数的声明中设置默认值即可。如果某个参数没有传入值,那么将使用默认值。
function add(x = 0, y = 0) { return x + y; } console.log(add(2, 3)); // 输出 5 console.log(add(2)); // 输出 2 console.log(add()); // 输出 0
在上面的示例中,如果不传递任何值,则默认使用 x 和 y 参数的默认值 0。
需要注意的是,使用了函数参数默认值后,函数的参数列表中可以有任意数量的参数。当然,有默认值的参数必须是函数参数列表中的最后一个。
参数默认值表达式
参数默认值可以是任意表达式,比如一个函数调用或者一个对象定义。下面的示例中,使用了一个函数调用作为 x 参数的默认值(这个函数返回值为 1)。
-- -------------------- ---- ------- -------- ----- - ----- - - -- - ------ - - -- - -------- ---- - ------ -- - ------------------- -- -- - -------------------- -- -- -
指定 undefined 作为参数值
默认情况下,如果没有为参数传递任何值,则该参数被赋值为 undefined。在某些情况下,我们可能需要使用 undefined 作为参数的值,这个时候可以使用 void 0 来指定 undefined。
function add(x = void 0, y = 0) { return x + y; } console.log(add(undefined, 3)); // 输出 3
总结
通过函数参数默认值,我们可以更加简洁、灵活而又不失可读性地进行函数调用。同时,参数默认值表达式的特性使得我们可以灵活的设置参数的默认值,以满足不同的需求。在日常开发中,使用函数参数默认值进行函数调用,不仅可以提高代码的可读性和简洁性,还可以提高开发效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64c8e35e5ad90b6d0414fe16