전개 연산자는 ... 을 사용하는 것이며,
const a = [1, 2, 3]
console.log(...a) // 1, 2, 3
console.log(1, 2, 3)
...a를 사용하지 않고, a만 넣고 출력을 한다면, [1, 2, 3]이 출력이 된다, 하지만 ...을 사용하면 아래 코드와 똑같이 전개해서 그냥 1, 2, 3만이 출력이 된다.
concat 과 전개 연산자로 같은 값 만들어 내기
concat에 대한 설명은 아래에 있다. 전개 연산자를 이렇게 활용 해 보면,
[a, b]안에서 전개 연산자 ...를 사용해 주면 되는 것이다. ... 전개 연산자를 사용하지 않았을 땐, [1, 2, 3][4, 5, 6] 이렇게 결과 값이 나오고, 전개 연산자 ...를 사용했을 땐 [1, 2, 3, 4, 5, 6] 이렇게 전개해서 결과 값이 나온다는 것이다.
c 는 오브젝트 어사인으로 만들어낸 코드인데, 사실 이해가 잘 되지 않아 우선 넘어간다.
그리고 d는 전개 연산자를 사용하지 않았을 때의 코드며 주석처리에 출력 값이 저렇게 나온다는 것이다. 그리고 e는 전개 연산자를 사용했을 때 주석 처리에 되있는 결과 값을 가져온다. 즉, 전개 연산자랑 c로 만들어낸 코드와 결코 다르지 않다는 값을 가져오는 것이다.
배열데이터의 대괄호[]와, 객체데이터 중괄호{} 를 ...전개연산자로 날려 버린다는 것을 기억해야 한다.
concat은 내가 병합하고자 하는 데이터를 앞에 붙히고, a.concat() 이런식으로 점 표기법을 사용해 호출하는 것이다. 병합 할 배열 데이터를 인수로 넣어준다.