Programming/JavaScript

메모리 관점에서의 비구조화 할당

2mukee 2023. 11. 7. 20:41
320x100
320x100

비구조화 할당 (구조 분해 할당)

: 배열이나 객체의 속성을 해제하여 그 값을 개별 변수에 담을 수 있게 하는 자바스크립트 표현식

let a, b, rest;
[a, b] = [10, 20];

console.log(a);
// Expected output: 10

console.log(b);
// Expected output: 20

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

console.log(rest);
// Expected output: Array [30, 40, 50]

 

 

- 비구조화 할당의 특징

: 선언한 변수가 원시타입이 아니면 얕은 복사가 이루어져서 메모리 참조를 공유

: 즉, 객체의 경우 복사본을 변경하면 원본도 변경이 된다

: 그러나 스프레드 ( ... ) 을 이용하면 깊은 복사를 하기 때문에 원본에 영향을 끼치지 않는다

 

※ 얕은 복사

: 원본 객체와 같은 메모리 주소를 참조하는 방식

: 원본이나 복사본을 변경하면 서로에게 변경이 반영됨

 

 

 

 

 

 

Reference

 

구조 분해 할당 - JavaScript | MDN

구조 분해 할당 구문은 배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 JavaScript 표현식입니다.

developer.mozilla.org

 

비구조화 할당 [JAVASCRIPT]

자바스크립트 비구조화 할당에 대해 알아보자.

gwang920.github.io

 

300x250
728x90