抽象轻松JavaScript

展开语法2.0版本更新

                                                                更新内容

优化了展开语法的比喻(在之前的文章中,展开语法比作成了数组类型的转换)

原文icon-default.png?t=N6B9http://t.csdn.cn/2Hy79

以数组展开,序列的形式使用

展开语法展开的是一种特殊的数组,序列!

你把数组展开看成,无字面量的数组 == 序列

抽象轻松JavaScript_第1张图片

 展开后的一种特殊的数组——序列

并不会以数组的形式参与,而是以序列的形式——带下标的普通元素

抽象轻松JavaScript_第2张图片

在调用函数时,参数是可以很多类型,但是 通过展开语法他们会变成数组,在使用他们的时候会二次转换 

原理就是,转换成数组再使用,使用是以序列的方式呈现

    function yidong(a,s,y){
        let newA = [...a];
        let zhi = newA.splice(s,1);//获取s的值,要删除原有的值,原数组已经改变了
        newA.splice(y,0,...zhi);//这一步相当于补漏洞,所以没必要删除
        //展开语法是为了把zhi数组的内容展开出来使用
        return newA
    };
    let arr = [1,2,3,4,5]
    console.log(yidong(arr,1,3));

不展开就是以数组形式进行运行

抽象轻松JavaScript_第3张图片

 出现这种情况,是因为没有用使用展开语法

并不会以数组的形式参与,而是以序列的形式——带下标的普通元素

总结

展开语法是让数组类型转换成序列,序列的具体内容如上面的两张图片

你可能感兴趣的:(抽象js,javascript,开发语言,ecmascript)