es6문법 비구조화 할당

2019. 3. 7. 17:36·WEB/JavaScript

var array = [1, 2, 3]

var a = array[0];

var b = array[2];



var [c,   ,   , d] =  [1, 2, 1, 3]

console.log(c)  // 1

console.log(d)  // 3


es5에서는 배열의 인덱스를 지정해서 대입을 해야 값을 넣을 수 있지만

비구조화 할당을 이용하면 아래와 같이 사용해서 대입이 가능하다 



var obj = {

h : 'eich',

i : {

j : 'jay'

}

};


var { h, i : { j } , k } = obj

console.log( h , j , k)  // 'eich', 'jay', undefined


obj의 키값을 찾아서 키값 변수에 밸류 값을 할당 해준다

당연히 키값의 이름이 다르거나 없으면 undefined가 할당 된다.



var destruct = ( { value : x } ) => {

console.log( x );

}


var obj = { value : 3 }


destruct(obj) // 3


함수의 변수에 객체의 값을 넣고 싶을 때도 사용이 가능 하다.


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


console.log(rest);

// expected output: [30, 40, 50]


배열에서 ...을 사용하면 시작점 부터 끝까지의 값들이 ...뒤에 입력한 이름으로 배열이 할당된다

객체도 가능





'WEB > JavaScript' 카테고리의 다른 글

JSON 이란  (1) 2019.03.31
javascript 상속 (prototype / class)  (0) 2019.03.21
es6 문법 const let var  (0) 2019.03.07
Javascript Event loop  (0) 2019.03.04
JS prototype /create  (0) 2019.02.14
'WEB/JavaScript' 카테고리의 다른 글
  • JSON 이란
  • javascript 상속 (prototype / class)
  • es6 문법 const let var
  • Javascript Event loop
vitnal
vitnal
4년차 프론트엔드 개발자입니다. react를 사용하여 웹 서비스를 개발한 경험이 있습니다. github: https://github.com/jch1223
  • vitnal
    vitnal 아카이브
    vitnal
  • 전체
    오늘
    어제
    • 분류 전체보기 (146)
      • AI (1)
      • WEB (76)
        • React (21)
        • Nextjs (17)
        • JavaScript (16)
        • React Native (5)
        • HTML & CSS (7)
      • CS (3)
      • Git (15)
      • Dev Tools (23)
      • Deploy (12)
      • Tech Memo (8)
      • Retrospect (7)
  • 반응형
  • hELLO· Designed By정상우.v4.10.5
vitnal
es6문법 비구조화 할당
상단으로

티스토리툴바