• 비구조할당

    → 배열의 인덱스 혹은 객체의 키를 기준으로 원하는 값만 빼내기

    → 어떤 상황에서 구조분해할당이 쓰이는가…? (예시)

    → 바깥에서 가져온 정보를 가공할 경우 (API / 책 / 영화정보등) : 중첩된 객체의 형태를 띄는 경우가 많다.

    → 필요한 정보만 빼내는 경우(예를 들어 가격이나 point 같은 원하는 정보)

  • 객체 구조분해 할당하기

    • 객체 키 값을 기준으로 원하는 값 빼내기 - 키 값을 기준으로 변수를 한방에 선언할 수 있다!

      const 객체이름 = {
      	key1 : "value1",
      	key2 : "value2",
      	key3 : "value3",
      	key4 : "value4",
      }
      
      //key값을 기준으로 구조분해할당 하는 경우
      const {key1,key2,key3,key4} = 객체이름;
      
      //다른 이름으로 변수를 구조분해할당 하고 싶은 경우
      const {key1:key1에 대응되는 이름,key2:key2에 대응되는 이름,key3:key3에 대응되는 이름,key4:key4에 대응되는 이름} = 객체이름;
      
    • 예시

  • 배열 구조분해 할당하기

    • 배열도 key값이 0부터 시작하는 정수이기 때문에 구조분해 할당 방식이 객체와 똑같다.

      const arr = [1,2,3];
      const [one,two,three] = arr;
      console.log(one,two,three); // 1 2 3
      
      let [x,y,z] = [1,2,3];
      console.log(x); // 1
      console.log(y); // 2
      console.log(z); // 3
      
      let [a,b,c = 3] = [1,2];
      console.log(x,y,z); // 1 2 3