es6的新語法,解構賦值簡單應用
阿新 • • 發佈:2021-11-11
var {a,b}=c
//等價於
var c = { a: 'some code', b: 'some code' };
var { a, b } = c; // a = c.a; b = c.b
console.log(a) //結果some code
//取出 c 裡面的a的值,必須是a要為c裡面有a這個物件才行。
//a 的位置不固定也可以這樣
var {b,a} = c;
console.log(a)//結果some code
ES6中允許從陣列中提取值,按照對應位置,對變數賦值。物件也可以實現解構。
一、陣列解構(為什麼叫解構我也不懂)
let [a,b,c] = [1,2,3]; console.log(a);//1 console.log(b);//2 console.log(c);//3 //直接定義陣列
二、物件解構
let person = {name:'lisi',age:30,sex:'男'}; // 以前的取值方法:person.name、person.age、person.sex // 現在的方法: // 要匹配變數名(變數名位置可發生變換): let {name,age,sex} = person; console.log(name);//lisi console.log(age);//30 console.log(sex);//男 // 這種方法不可行 因為沒有定義person.a、person.b、person.c所以肯定是undefined let {a,b,c} = person; console.log(a);//undefined console.log(b);//undefined console.log(c);//undefined //別名賦值: //自己理解(也就是把原來的person.name, 的name重新命名為myName,person.age= myAge命名為myAge) let {name:myName,age:myAge} = person; console.log(myName);//lisi console.log(myAge);//30 //交換name和age的位置無礙。