扩展运算符与rest参数

Posted 飞鹰3995

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了扩展运算符与rest参数相关的知识,希望对你有一定的参考价值。

今天小编来介绍一个平时接触较少的,但是却给平时编码带来很多方便的ES6语法——三个点。这三个点主要是针对数组的格式转换。大家也可以关注我的微信公众号,蜗牛全栈。
一、扩展运算符:把数组或者类数组展开成逗号隔开的值实例1:

function foo(a,b,c){
    console.log(a,b,c)
}
let arr = [1,2,3]
foo(...arr) // 1 2 3
console.log(...arr) // 1 2 3

实例2:连接两个数组

let arr1 = [1,2,3]
let arr2 = [4,5,6]
// es5
Array.prototype.push.apply(arr1,arr2) // [1,2,3,4,5,6]
// es6
arr1.push(...arr2)
console.log(arr1) // [1,2,3,4,5,6]

实例3:字符串

let str = "hello"
let arr = [...str]
console.log(arr) // ["h","e","l","l","o"]

二、rest参数:将逗号隔开的值转换为数组实例

1:函数参数

function foo(...args){
    let sum = 0
    args.forEach(function(item){
        sum += item
    })
    return sum
}
console.log(foo(1,2)) // 3
console.log(foo(1,2,3)) // 6
function foo(x,...args){
    console.log(x)
    console.log(args)
}
foo(1,2,3,4) // 1 [2,3,4]

实例2:与解构赋值结合

let [x,...y] = [1,2,3]
console.log(x) // 1
console.log(y) // [2,3]

 

以上是关于扩展运算符与rest参数的主要内容,如果未能解决你的问题,请参考以下文章

ES6-11学习笔记--扩展运算符与rest参数

扩展运算符与rest参数

☀️Rest参数和扩展运算符

☀️Rest参数和扩展运算符

☀️Rest参数和扩展运算符

ES6系列_4之扩展运算符和rest运算符