[JS] 구조분해할당

soor.dev·2021년 9월 8일
0

JS 복습

목록 보기
5/5

배열 구조분해

let [x, y] = [1, 2];
console.log(x);
console.log(y);

let users = ['hyunsoo', 'heeni', 'jk'];
let [user1, user2, user3] = users;

let str = "Hyunsoo Heeni JK";
let [users] = str.split(" ");

1. 기본값 설정

let [a, b, c] = [1, 2];

let [a=10, b=20, c=30] = [1, 2];
console.log(a); // 1
console.log(b); // 2
console.log(c); // 30

3. 반환값 무시

let [user1, , user2] = ['Hyunsoo', 'Heeni', 'JK', 'Suhee'];

console.log(user1); // 'Hyunsoo'
console.log(user2); // 'JK'

3. 바꿔치기

let a = 1;
let b = 2;

[a, b] = [b, a];

객체 구조분해

let user = {
  name: 'JK',
  age: 25,
}

let { name, age } = user;
// let name = user.name;
// let age = user.age;

console.log(name); // 'JK'
console.log(age); // 25

1. 새로운 변수 이름으로 할당 가능

let {name:userName, age:userAge} = user;

console.log(userName); // 'JK'
console.log(userAge); // 25

2. 기본값 설정

let user = {
  name: 'JK',
  age: 25,
};

// gender 이 undefined 일때만 기본 값이 사용됨
// 만약 위 user 객체에 gender:'male' 값이 들어가 있다면 기본값이 사용되지 않음
let {name, age, gender = 'female'} = user;
console.log(gender); // 'male'

0개의 댓글