首页  >  文章  >  web前端  >  ## ES6 中的扩展语法和剩余参数有什么区别?

## ES6 中的扩展语法和剩余参数有什么区别?

Barbara Streisand
Barbara Streisand原创
2024-10-24 17:23:02967浏览

## What's the Difference Between Spread Syntax and Rest Parameters in ES6?

ES2015 / ES6 中的扩展语法与剩余参数

JavaScript ES2015 引入了两个很容易混淆的重要功能:扩展语法和剩余参数范围。它们都使用三点符号 (...)。然而,它们有不同的用途。

扩展语法

扩展语法用于将可迭代扩展为其各个元素。这可以应用于数组、字符串或对象。例如,考虑以下代码:

<code class="javascript">const abc = ['a', 'b', 'c'];
const def = ['d', 'e', 'f'];
const alpha = [...abc, ...def];</code>

在此示例中,扩展语法用于将 abc 和 def 数组扩展为新的 alpha 数组。因此,alpha 将包含 abc 和 def 中的所有元素。

Rest 参数

相反,rest 参数在函数定义中用于收集传递给函数的剩余参数。它由三个点后跟变量名称来表示。例如:

<code class="javascript">function sum(...rest) {
  let result = 0;
  rest.forEach(num => result += num);
  return result;
}</code>

在 sum 函数中,剩余参数 ...rest 收集传递给函数的所有参数并将它们存储在剩余数组中。然后,它迭代剩余部分并累加其元素的总和。

以上是## ES6 中的扩展语法和剩余参数有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn