ES6学习笔记6:函数参数

函数参数

ES6中函数参数不仅可以使用解构赋值的方式,还可以直接使用默认参数(Default),以及剩余参数(Rest,也有人译为不定参数),定义函数时采用spread操作符表示剩余参数,此外调用函数时也可以使用spread操作符。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function foo(x, y=12) {
// 如果y没有传值,则为12
return x + y;
}
foo(3) === 15;

function bar(x, ...y) {
// y是一个数组,这里...表示spread操作符
return x * y.length;
}
bar(3, "hello", true) === 6;

function baz(x, y, z) {
return x + y + z;
}
// 将数组的各个值作为参数进行传值
baz(...[1,2,3]) === 6;

在如下示例中,我们可以更直观地看出spread操作符就是把数组的各个元素拆开了。

1
2
3
function myFunction(v, w, x, y, z) { }
var args = [0, 1];
myFunction(-1, ...args, 2, ...[3]);

知识点总结

  1. 函数的默认参数;
  2. 函数的剩余参数;
  3. spread操作符

参考

  1. BabelJS - Learn ES2015