Spread 문법은 ... 을 사용해 배열을 풀어서 인자로 전달하거나 각각의 요소로 넣을 때에 사용한다.
function sum(x, y, z) {
return x + y + z;
}
const numbers = [1, 2, 3];
console.log(sum(...numbers)); // 6
numbers가 배열임에도 불구하고 x, y, z에 각 요소가 들어가 계산되는 것을 확인할 수 있다.
Rest 문법은 파라미터를 배열의 형태로 받아서 사용할 수 있다.
function sum(...theArgs) {
return theArgs.reduce((acc, cur) => acc + cur);
}
sum(1, 2, 3) // 6
sum(1, 2, 3, 4) // 10
이를 이용하면 배열을 조작할 때 좀 더 편하게 작성할 수 있다.
let arr = [1, 2, 3];
let arr2 = [...arr]; // arr.slice()
console.log(arr2) // [1, 2, 3]
let arr3 = [...arr, ...arr2]; // arr.concat(arr2)
console.log(arr3) // [1, 2, 3, 1, 2, 3]
구조 분해 할당은 배열이나 객체의 속성을 해체해서 그 값을 변수에 담을 수 있게 하는 자바스크립트 표현식이다.
let a, b, rest;
[a, b] = [10, 20];
console.log(a); // 10
console.log(b); // 20
[a, b, ...rest] = [10, 20, 30, 40, 50];
console.log(rest); // [30, 40, 50]
'학습목표 정리' 카테고리의 다른 글
[JS/브라우저] DOM Chapter - DOM으로 HTML 조작하기 (0) | 2021.09.03 |
---|---|
[JS/브라우저] DOM Chapter - DOM 이해하기 (0) | 2021.09.03 |
[JS/Node] 핵심 개념과 주요 문법 Chapter - 스코프, 클로저 (0) | 2021.08.30 |
[JS/Node] 핵심 개념과 주요 문법 Chapter - 원시 자료형과 참조 자료형 (0) | 2021.08.25 |
[CSS] 레이아웃, Selector Chapter - 웹 앱 화면 설계하기 (0) | 2021.08.25 |