[JavaScript 문법] 구조 분해 할당

전인혁·2022년 7월 5일
1

JavaScript 문법

목록 보기
1/2
post-thumbnail
post-custom-banner

설명

프로그래머스에서 문제를 해결한, 다른 사람의 풀이를 구경하던 중 유용한 기법을 알게되었다.
배열을 활용해 변수를 생성하고 각각에 값을 할당하는 기법이다.

++ 추후 검색을 통해 위 기법의 이름이 구조 분해 할당이라는 것을 알았다.

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment


구조 분해 할당?

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


코드

// let으로 선언한 임의의 배열 [a,b,c]에 배열(input)을 할당하면,
// 각 인덱스에 맞는 변수를 생성할 수 있다.

let input = [3, 4, 5]; 
let [a, b, c] = input;

console.log(a); // 3
console.log(b); // 4
console.log(c); // 5

이는 다음과 같은 문제에서 활용할 수 있다.


예시
철수는 300원을 가지고 있는데, 친구들에게 50원씩 나누어주려고 한다. 최대 몇 명의 친구에게 나누어 줄 수 있는가?

입력
input = [300, 50]

출력
6


알고리즘 풀이를 위해, 입력 배열(input)에 들어있는 300과 50을 각각 변수에 할당해야한다.

let money = input[0];
let give = input[1];

console.log(money); //300
console.log(give); //300

하지만 구조 분해 할당을 활용하여 변수를 선언하면, 더욱 간단하게 표현할 수 있다.

let [money, give] = input;

console.log(money); //300
console.log(give); //300
profile
Front-end Developer
post-custom-banner

0개의 댓글