1. 구조분해(Destructing)


분해 후 새 변수에 할당

1-1) 배열

Ex)

const [a, b, ...rest] = [10, 20, 30, 40, 50];

// 질문: a, b, rest는 각각 어떤 값인가요? a는 10 ,b는 20 , rest는 [30, 40, 50]

Ex)

let users = [“mike”,”tom”,”jane”];

let [user1,user2,user3] = users;

user1; // “mike”
user2; // “tom”
user3; // “jane”

1-2) 객체

Ex)

const {a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40}
// 질문: a, b, rest는 각각 어떤 값인가요? // a는 10 , b는 20 , rest는 {c: 30, d: 40}

Ex)

let user = {name : “mike” , age:30};
let {name, age} = user;

name; // “mike”
age; // 30

함수에서의 객체 분해

Ex)

function whois({displayName: displayName, fullName: {firstName: name}}){
  console.log(displayName + " is " + name);
}

let user = {

id: 42,
displayName: "jdoe",
fullName: {
  firstName: "John",
  lastName: "Doe"
}

};

whois(user) // 질문: 콘솔에서 어떻게 출력될까요? jdoe is John

객체 구조분해 할당