1. 参数展开(扩展)
  2. 默认参数

    参数展开

  1. //参数展开,即收集剩余参数
  2. //...args是a b 之外的剩余参数
  3. function show(a, b, ...args){
  4. console.log(a, b, ...args)
  5. }
  6. show(1,2, 'a', [3,4,5], {a:1,b:2})
  7. //输出 1 2 "a" (3) [3, 4, 5] {a: 1, b: 2}
  8. //参数展开,还可以展开一个数组
  9. function show(a, b, c){
  10. console.log(a, b, c)
  11. }
  12. let arr = [1,2,3]
  13. show(...arr) //等价于 show(1,2,3),数组在此处展开
  14. //还可以如下
  15. let arr1 = [1,2,3]
  16. let arr2 = [4,5,6]
  17. let arr = [...arr1, ...arr2] //
  18. console.log(arr) // (6) [1, 2, 3, 4, 5, 6]
  19. //是不是很神奇

默认参数

  1. //与其它语言类似
  2. function show(a, b=2, c='c'){
  3. console.log(a,b,c)
  4. }
  5. show(1) // 1 2 "c"
  6. show() // undefined 2 "c"
  7. show(1,2,3) // 1 2 3