구조 분해 할당 구문은 배열이나 객체의 속성을 분해해서, 그 값을 변수에 담을 수 있게 하는 표현식
//배열 구조 분해
let users = ['Mike','Tom','Jane'];
let [user1,user2,user3] = users;
console.log(user1); // 'Mike'
console.log(user2); // 'Tom'
console.log(user3); // 'Jane'
let str = "Mike-Tom-Jane";
let [user1,user2,user3] = str.split('-');
console.log(user1); // 'Mike'
console.log(user2); // 'Tom'
console.log(user3); // 'Jane'
//배열 구조 분해 : 기본 값
let [user1, ,user2] = ['Mike','Tom','Jane','Tony'];
console.log(user1); // 'Mike'
console.log(user2); // 'Jane'
//배열 구조 분해 : 바꿔치기
// a와 b의 값을 바꿔주세요.
let a = 1;
let b = 2;
[a,b] = [b,a];
배열 구조 분해와 거의 동일하지만, 순서를 신경쓰지 않아도 된다는 점이 다르다.
let user = {name: 'Mike',age:30};
let {name, age} = user;
console.log(name); // 'Mike'
console.log(age); // 30
// 새로운 변수 이름으로 할당
let user = {name: 'Mike',age:30};
let {name : userName, age: userAge} = user;
console.log(userName); // 'Mike'
console.log(userAge); // 30
// 기본값 주기
let user = {name: 'Mike',age:30};
// let {name, age, gender} = user; 이러면 (gender = undefined)
let {name, age, gender = 'male'} = user;