ECMA6Script学习笔记(四)

【摘要】 本文是对自己学习ES6的学习笔记回顾,后面是概要: 本文介绍了ES6中的rest和spread操作符。Rest操作符用于函数参数列表中,允许函数接收任意数量的参数,并将它们存储在一个数组中。Spread操作符则在调用函数或构造数组和对象时使用,允许将数组或对象展开为单独的元素或属性。文章通过代码示例展示了rest操作符如何收集剩余参数,以及spread操作符在合并数组和对象中的应用.

原创声明:文章首发地址:https://bbs.huaweicloud.com/blogs/431972,本文是由本作者在华为云社区的首发后搬运而来,不存在抄袭.

rest和spread

个人比较喜欢在代码中写注释,因此后续的代码和知识点中,很多解释会在代码中以注释的方式存在

rest和spread 代表参数列表中多个普通参数 ,其中普通函数和箭头函数中都支持使用

rest作为形参来使用

作用:作为形参用来接收多余的参数

 //js中可变参数叫rest 剩余的,解决剩余的参数接受问题
        //可以接收剩余的一个或多个参数
        //一个参数列表中只能是最后一个,因此就只能是唯一个
        let fun1= (a,b,c,d,... arr)=>{
            console.log(a,b,c,d);
            console.log(arr);
        };
        fun1(1,2,3,4,5,6,7,8,9);

arr接收了剩余的参数值,如下图所示:

image.png

spread作为实参来使用,可以有很多应用场景
/* spread 展开 rest在实参上的使用 */
        let arr = [1,2,3];
        // let info = ...arr // ...arr >> 1,2,3 这么写是错的,必须在调用方法时,作为实参使用
        fun2 = (a,b,c)=>{
            console.log(a,b,c);
        }
        fun2(arr); //传给第一个参数
        fun2(...arr); //分别赋值给a,b,c

image.png

spread的应用场景
1.快速合并数组,spread,作为实参变量使用

作为实参变量,然后作为变量值来使用

 /* spread的应用场景 */
        //1.快速合并数组,spread,作为实参变量使用
        let a = [1,2,3];
        let b = [4,5,6];
        let c = [7,8,9];
        //合并数组
        let d = [...a,...b,...c];
        console.log(d);

image.png

2.快速合并对象

将对象的属性值作为属性值进行传入并进行合并

//2.快速合并对象
//将多个对象的属性作为值传入合并
let person1={name:"张三"};
        let person2={age:"10"};
        let person3={gender:"boy"};
        let person4={...person1,...person2,...person3};
        console.log(person4);

image.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XError_xiaoyu

你的支持,使我更好的创作

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值