프로그래밍 언어/JavaScript

[자바스크립트 필기] #20 - 디스트럭처링 할당

2021. 8. 12. 23:20

 

*이 필기는 웹 프로그래밍 튜토리얼에서 보고 작성합니다. 

 

디스트럭처링 할당은 배열이나 이터러블 객체등을 비구조화해서 1개 이상의 변수에 개별적으로 할당하는 것을 말한다. 간단히 말해서 배열의 요소나 객체의 프로퍼티 값같은걸 다른 변수에 저장하는 것이다. 

 

1. 배열 디스트럭처링 할당 

const arr = [1, 2, 3];

// ES5 
var one = arr[0];
var two = arr[1];
var three = arr[2];
console.log(one, two, three); // 1 2 3 

// ES6 배열 디스트럭처링 할당
const [one, two, three] = arr;
console.log(one, two, three); // 1 2 3

ES6의 배열 디스트럭처링 할당은 배열의 각 요소를 배열로부터 추출해 1개 이상의 변수에 할당한다. 이때 배열 디스트럭처링 할당의 대상(우변)은 이터러블이어야 하며, 순서대로 할당된다. 

배열 디스트럭처링 할당을 위해서 왼쪽에 할당받을 변수를 선언해야하는데 이때 변수를 저렇게 배열 리터럴 형태로 선언한다. 

 

2. 객체 디스트럭처링 할당

const user = { firstName: 'Ungmo', lastName: 'Lee' };

//ES6 객체 디스트럭처링 할당 
const { lastName, firstName } = user;
console.log(firstName, lastName); // Ungmo Lee

객체의 경우도 비슷한데 할당 기준이 순서대로가 아니라 프로퍼티 키이다. 따라서 선언한 변수 이름과 프로퍼티 키 이름이 일치해야 할당된다. 

 

여기까지 입니다 - 틀린 점이 있다면 꼭 지적해주세요!

 

 

 

'프로그래밍 언어/JavaScript' 카테고리의 다른 글
  • [자바스크립트 필기] #22 - 이벤트
  • [자바스크립트 필기] #21 - DOM이란?
  • [자바스크립트 필기] #19 - 스프레드 문법
  • [자바스크립트 필기] #18 - 이터러블
SpaceCowboy
SpaceCowboy
공부한거 기록하는 블로그입니다!!
SpaceCowboy
공부한거 기록하는 블로그
SpaceCowboy
전체
오늘
어제
  • 분류 전체보기
    • 프로그래밍 언어
      • C Programming
      • JavaScript
    • Computer Science
      • 자료구조
      • 알고리즘
      • 객체지향
    • 프레임워크
      • Nest.js
      • TypeORM
    • Web Programming
    • 블록체인
      • 기초
    • 데브옵스
      • Git
      • Docker

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • typeormseeding
  • 재귀
  • 자바스크립트챌린지
  • HTML
  • 자료구조필기
  • nestjs
  • JS
  • CSS
  • customrepository
  • 이중연결리스트
  • softDelete
  • 자료구조
  • 자바스크립트
  • 논리삭제
  • typeorm3.0
  • 자바스크립트 필기
  • typeorm0.3
  • TypeORM
  • 복습
  • 자바스크립트필기

최근 댓글

최근 글

hELLO · Designed By 정상우.
SpaceCowboy
[자바스크립트 필기] #20 - 디스트럭처링 할당
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.