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(1, 2, 3, 4, 5);
// 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([1, 2, 3, 4])
// console -> 4
// 현재는 ...이 전개 문법으로 사용되고 있다
// 이유는 ...arr이 max의 전달 인자로 사용되고 있기 때문이다
// 따라서 [1, 2, 3, 4] 라는 배열이 펼쳐져
// Math.max(1, 2, 3, 4)와 같은 현상이 일어나는 것이다
// 따라서 max 라는 변수에는 4가 할당이 된다
// 배열 이어붙이기
let arr1 = [1, 2, 3, 4]
let arr2 = [5, 6]
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 |