如何使用 ECMAScript 2016 的默认参数?

阅读时长 4 分钟读完

在前端开发中,JavaScript 经常被用作重要的开发语言之一。为了使代码更加易读、易维护,语言的开发者提供了一些有用的功能。其中之一是 ECMAScript 2016 中的默认函数参数。

默认参数允许您为函数参数设置默认值。在此之前,使用默认值的最常见方法可能是在函数中使用 if/else 语句。但这种方式往往会使代码显得复杂,尤其是当有多个参数需要提供默认值时。默认参数的引入可以使您的代码变得更加干净和简洁。

什么是 ECMAScript 2016 的默认参数?

默认参数允许您为函数参数设置默认值。如果未传递参数,则将使用默认值。这对于在函数中使用可选参数或不定长度参数列表特别有用。

默认参数使用一个指定值作为函数的参数,如果没有传递参数,则会使用该指定值。因此,我们可以在定义函数时将默认值分配给参数。

ECMAScript 2016 的默认参数使用简单。在定义函数时,您可以指定默认参数的值。例如,假设您需要编写一个函数来计算任意数量的数字的总和。实现此操作的函数可能如下所示:

注意看函数定义时,参数写为 numbers = [],square brackets(中括号)表示我们正在为 numbers 参数指定一个空数组作为默认值。这意味着如果没有传递任何参数,函数将始终返回 0。

现在,让我们测试一下:

我们首次调用 sumNumbers() 函数并传递空参数。因为没有传递参数,所以 numbers 参数使用其默认值 []. 从而输出 0。在第二个测试用例中,我们通过将参数数组传递给函数来计算数组中数字的总和。

指定默认值

默认参数使用一个指定值作为函数的参数。您可以根据要求设置不同类型的参数默认值,如:

如果没有提供 displayMessage() 中的参数,它将默认输出 "I love coding" 信息。另一方面,如果传递了参数,则将输出传递的参数。

默认值可以是数字、字符串、最近的可用变量等等。

在此示例中,如果未传递参数,则 getRandomNumber() 使用 max = 10 的默认参数。如果传递参数,则将使用传递的值代替默认值。

注意与解构参数一起使用带默认值的情况

默认参数和解构参数在 ECMAScript 2016 中同时引入。使用解构参数和默认参数时,需要格外注意几点:

这里使用了两个默认参数:nameage。如果未传递任何参数,则将使用第二个默认参数。

总结

ECMAScript 2016 的默认参数允许您为函数参数设置默认值,从而使您的代码变得更加干净和简洁。有关如何使用默认参数的详细信息,以及如何编写使用默认参数的函数的示例代码,请参见本文。

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

纠错
反馈