본문 바로가기
웹/JavaScript

ES6. rest parameter, spread operator 차이

by void pattern 2021. 1. 18.

spread operator(펼침연산자)

const arr = [1, 2, 3, 4];

console.log(arr);	//[1,2,3,4]
console.log(...arr); //1,2,3,4
console.log([...arr]); // [1,2,3,4]

spread 연산자를 사용하면 배열이 아니라 개별 요소로 결과값이 나온다.

[...spread operator]의 형태로 쓴다면 결과는 배열이 된다.

 

 

rest parameter(나머지 매개변수)

function restParam(param1, param2, ...rest) {
	console.log(param1); //1
	console.log(param2); //2
	console.log(rest); //[3,4,5,"rest!";]
}
restParam(1, 2, 3, 4, 5, 'rest!');

파라미터에 ...를 사용하면 함수에 전달된 인수를 배열로 묶어서 나타낼 수 있게 한다.

함수의 매개변수 개수가 함수 객체의 length에 영향을 주지 않는다.

 

 

 


2021/01/04 - [웹/JavaScript] - ES6 배열. spread operator 펼침연산자 ...arr, Array.from

 

ES6 배열. spread operator 펼침연산자 ...arr, Array.from

펼침연산자 ... 배열을 펼쳐서 복사할 수 있는 녀석으로 기존 데이터의 참조를 끊고, 새로운 메모리에 새로운 데이터가 들어가게 된다. const arr = [1, 2, 3, 4]; const spreadOperator = [...arr]; console.log..

webroadcast.tistory.com

 

댓글