Node/알아두어야 할 자바스크립트

비구조화 할당

webmaster 2022. 7. 22. 22:47
728x90
const example = {a: 123, b: { c: 135, d: 146}};
const a = example.a;
const d = example.b.d;

const { a, b: { d } }  = example;
console.log(a); //123
console.log(d); //146, 객체는 키가 같아야 된다.

const arr = [1,2,3,4,5];
const x = arr[0];
const y = arr[1];
const z = arr[4];

const [x, y, , , z] = arr; //배열은 자리가 같아야된다
  • 객체는 키가 일치해야하고, 배열은 자리가 일치해야 한다.

객체 리터럴
배열 리터럴

  • const { 변수 } = 객체;로 객체 안의 속성을 변수명으로 사용 가능
  • 단, getCandy()를 실행했을 때 결과가 candyMachine.getCandy()와는 달라지므로 주의
  •  count처럼 속성 안의 속성도 변수명으로 사용 가능

주의할 점

  • this를 사용하고 있는 경우 구조 분해 할당 사용하면 문제 발생 
  • this는 함수를 호출할 때 어떻게 호출되었냐에 따라 결정되기 때문
728x90

'Node > 알아두어야 할 자바스크립트' 카테고리의 다른 글

Promise, async/await  (0) 2022.07.23
클래스  (0) 2022.07.22
화살표 함수  (0) 2022.07.22
템플릿 문자열, 객체 리터럴  (0) 2022.07.22
var, const, let  (0) 2022.07.22