ES6 解构赋值(变量声明的时候加花括号)

ES6语法中,声明变量时不再只能一个一个来赋值了,可以批量赋值了

data: {
    cjList: {
      person: { name: 'cj', age: 21 },
      eatFood: { day1: '肉', day2: '还是肉', }
    }
  },
  methods: {
    getData () {
      /**
       * 得到结果:{ name: 'cj', age: 21 }
       */
      const person=this.data.cjList.person
      /**
       * 得到结果也是:{ name: 'cj', age: 21 }
       */
      const {person}=this.data.cjList
    }
  }

ES6 解构赋值(变量声明的时候加花括号)_第1张图片

同样,也能直接拿到data下的一级数据 

ES6 解构赋值(变量声明的时候加花括号)_第2张图片


ES5中,赋值变量需要一个个来声明在对应好设置的值,在ES6中就可以直接像数组一样进行赋值了

ES5:
var a=1,b=3
ES6:
let [a,b] = [1,3];  //a=1,b=3 索引解构

参考其他博客中的示例练习: (具体地址见下方)

        // 第一题
         {
             let [a,b,c] = [1,3,4];
             console.log(a,b,c);// a=1 b=3 c=4
         }

         // 第二题
         {
             let [a,[b,c]] = [1,[3,4]];//等号右侧数组里面,第二个是二维数组
             console.log(a,b,c);// a=1 b=3 c=4
         };//结构赋值是给变量赋值的(拆解数据给变量赋值),不存在b=[3],c=[4]这种情况的

         // 第三题
         {
             let [a,b,c] = [1,[3],4];
             console.log(a,b,c)//a=1 b=[3] c=4 声明变量匹配等号右边的数据
             //也可以理解为是按照索引项来匹配数据的
         }

         // 第四题
         {
             let [a,[b],c] = [1,[3,4]]; 
             console.log(a,b,c);//a=1 b=3 c=undefined(按照对应的索引匹配一个符合条件的数据)
         }

         // 第五题
         {
             let [a,,c] = [1,,4];
             console.log(a,c);//a=1 c=4
         }

         // 第六题
         {
             let [a,...b] = [1,2,3];
             console.log(a,b);//a=1 b=[2,3]
         }
 

涉及到解构赋值中使用 扩展运算符...  可以参考:

es6 变量的解构赋值_巧克力很苦的小博客-CSDN博客_es6 变量的解构赋值

你可能感兴趣的:(微信小程序,html5)