4. Spread / Rest 操作符

Spread / Rest 操作符指的是 ,具体是 Spread 还是 Rest 需要看上下文语境。

当被用于迭代器中时,它是一个 Spread 操作符:

  1. function foo(x,y,z) {
  2. console.log(x,y,z);
  3. }
  4. let arr = [1,2,3];
  5. foo(...arr); // 1 2 3

当被用于函数传参时,是一个 Rest 操作符:

  1. function foo(...args) {
  2. console.log(args);
  3. }
  4. foo( 1, 2, 3, 4, 5); // [1, 2, 3, 4, 5]