let obj={a1:[1,2,3],a2:"123"};
//x=obj.a1[0];
//y=obj.a1[2];
let {a1:[x,y],a2}=obj;
console.log(x, y);
let obj={s:{n:'1'},n:[1,"2",3,"4"],m:[[1]]};
let {m:[x1],s:{n},n:[,...m2]}=obj;
console.log(x1, n, m2); //[1] "1" ["2", 3, "4"]
let {x, y, __proto__} = 1;
console.log(x, y, __proto__);
console.log(Object(1));
console.log(Object([1, 2, 3]));
let {length} = [1, 2, 3]
console.log(length);//3
为了避免错误,不要将{}写在行首,会被理解为代码块
let a;
{a}={a:'a'};//js引擎会将{a}理解成一个代码块let a;
({a}={a:'a'});
console.log(a); //a