ES11:函数的所有参数变成可选的

ES11(也称为 ECMAScript 2020)是 JavaScript 语言的最新版本,它带来了许多新特性和语言改进,其中一个新特性是将函数的所有参数变成可选的。

在 ES11 之前,我们必须为函数的每个参数提供一个值或一个默认值。但是在 ES11 中,我们可以将所有参数都变成可选的,这意味着我们可以调用函数而不必传递任何参数值。

为什么要将函数的所有参数变成可选的?

很多人可能会问,为什么需要将函数的所有参数都变成可选的?这是因为在某些情况下,我们可能需要根据不同的条件来确定要向函数传递哪些参数。此外,有时我们可能不想强制用户必须传递参数值。

如果我们在 ES11 之前想要实现这种行为,我们通常需要对参数进行丑陋的检查和处理,但现在在 ES11 中我们可以更轻松地实现它。

函数的所有参数都变成可选的如何工作?

要将函数的所有参数变成可选的,我们可以简单地在参数名称后面加上问号(?),这将告诉编译器该参数是可选的并且可以不提供值。

以下是一个示例函数:

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

在这个函数中,我们将所有参数 a、b 和 c 都标记为可选的。 这意味着我们可以在调用这个函数时,传递所有三个参数,传递其中的一些参数,或者完全不传递参数。

以下是一些示例调用:

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

如何使用函数的可选参数?

对于可选参数,我们需要在函数内部对它们进行检查,确保它们已被定义并正常使用。

以下是一个示例函数,它使用可选参数并对它们进行检查:

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

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

在这个示例中,我们使用 typeof 检查每个可选参数是否已被定义。如果参数未定义,则为它们分配一个默认值。

结论

ES11 是 JavaScript 的最新版本,它带来了许多新特性和语言改进,其中一个重要的新特性是将函数的所有参数变成可选的。这使得 JavaScript 的函数变得更加灵活和易于使用。如果你想要学习更多关于 ES11 的知识,请查看官方文档。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6707b340d91dce0dc86b94f7