扩展运算符

235 阅读1分钟
    /* let arr1 = [1,2,3]; */
    /* let arr2 = [4,5,6]; */
    /* let arr3 = [1,2,3]; */

    /* 数组里面相同的内容不会被覆盖 */
    /* let newArr = [...arr1,...arr3];
    console.log(newArr); */

    /* 传统拼接数组的方法 */
    /* let newArr = arr1.concat(arr2);
    console.log(newArr); */

    /* es6之扩展运算符(...) */
    /* 把arr1和arr2给展开了 [1,2,3,4,5,6] */
    /* 用扩展运算符合并两个数组 返回一个新数组 */
   /*  let newArr = [...arr1,...arr2];
    newArr[0] = 7
    console.log(newArr); */
    /* 对原数组没影响 */
    /* console.log(arr1,arr2) */

    let obj1 = {
        name:"如花",
        age:18,
        sex:'男'
    }
    /* 传统取值方式 */
   /*  let name = obj1.name;
    console.log(name); */

    /* es6取值方式 */
    /* es6的解构赋值 */
    /* {}就代表obj1 {name} 把obj1里面的name给取出来 */
    /* {name}中的name必须要和 obj1的key一致 */
    let {name,age,sex} = obj1;
    console.log(name,age,sex)

    /* let obj3 = {
        name:"胖胖",
        age:20,
        sex:"女",
        car:'奔驰'
    }
    let obj4 = {} */

    /*  Object.assign 第一个参数表示新对象,
    其他的参数表示要被合并的对象 返回一个新的对象*/
   /*  let newObj = Object.assign({},obj1,obj3);
    console.log(newObj); */

    /* 第二种Object.assign使用方式 */
    /* Object.assign(obj4,obj1,obj3);
    console.log(obj4) */

    /* 相同的属性会被覆盖 */
    /* let newObj = {...obj1,...obj3};
    console.log(newObj); */

    /* let obj2 = {
        car:"宝马",
        type:"5系"
    } */
    /* 使用扩展运算符来合并对象并返回一个新对象 */
    /* let newObj = {...obj1,...obj2}; */
    
    /* newObj.name = "龚助"
    console.log(newObj); */
    /* 对原对象没有影响 */
    /* console.log(obj1,obj2); */