1. Rest Parameter & Spread Syntax

  1 - 1) 나머지 매개변수와 스프레드 신택스는 자바스크립트의 ES6 업데이트 후에 도입된 문법이다

  1 - 2) ... 이라는 문법을 통해 크게 Rest Parameter(나머지 매개변수), Spread(펼침) 두 가지 기능으로 활용될 수 있다.

  1 - 3) ... 은 함수에서 매개변수로 정의되면 rest parameter, 어떤 함수의 전달인자로 넘겨주면 spread syntax가 된다!

 

2. Rest Parameter

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function restParameter(a, b, ...c) {
  let sum = a + b;
  console.log(sum);
  console.log(c);
}
 
restParameter(12345);
// console -> 3
// console -> [3, 4, 5]
// rest parameter는 여분의 매개변수를
// 배열로 만들어 활용할 수 있다
// 현재 함수를 보면 전달 인자로 1, 2 는 더해져 3으로 출력되고
// 그 외의 나머지 3, 4, 5는 배열로 출력됨을 알 수 있다
// 주의할 점은 rest paremeter로 활용될 매개변수는 항상
// 매개변수의 마지막에 있어야 한다는 점이다
// 즉 a, b 보다 뒤에 존재해야 한다
// 나머지로 활용되야 하기 때문이다!
 
cs

 

 

3. Spread Syntax

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function spreadSyntax(arr) {
  let max = Math.max(...arr);
  console.log(max);
}
 
spreadSyntax([1234])
// console -> 4
// 현재는 ...이 전개 문법으로 사용되고 있다
// 이유는 ...arr이 max의 전달 인자로 사용되고 있기 때문이다
// 따라서 [1, 2, 3, 4] 라는 배열이 펼쳐져
// Math.max(1, 2, 3, 4)와 같은 현상이 일어나는 것이다
// 따라서 max 라는 변수에는 4가 할당이 된다
 
// 배열 이어붙이기
let arr1 = [1234]
let arr2 = [56]
console.log([...arr1, ...arr2]) // [1, 2, 3, 4, 5, 6]
//마찬가지로 이 경우에도 전개 문법으로서 ...이 활용되고 있다
cs

'Programming Language > Javascript' 카테고리의 다른 글

ES6 - 구조 분해 할당  (0) 2020.12.31
ES6 - Class(1)  (0) 2020.12.29
Object Oriented Programming  (0) 2020.11.05
Closure  (0) 2020.11.04
Scope  (0) 2020.11.04

+ Recent posts