Spread/Rest문법에 대해 공부하고 난 뒤 페어를 만나 javascript Koans과제를 함께 풀었다. 잘 하는 분을 만나서 많은 도움을 얻을 수 있었다. 오늘 과제 수행에 있어 많은 배움을 얻을 수 있어서 좋았지만 한편으로는 나도 누군가에게 가르쳐줄 수 있는 사람이 되고 싶다는 생각이 들었다. 나는 자신감이 없어서 페어가 모르고 내가 아는 부분이 나오더라도 자신감 없이 '이럴.. 수도 있지 않을까요? 왠진 모르겠지만 .. 이렇게 하니까 되긴 하네욥..!?' 이런식으로 말을 하곤 한다. 자신감이 없기 때문이다. 내가 공부를 열심히 하고 잘 준비하고 내 자신에게 떳떳하다면 자신감은 자연스럽게 생길 거라 생각한다. 하루 일정이 끝난후에 추가 공부 시간을 게을리 하지 않아야겠다고 다짐한다.
주로 배열을 풀어서 인자로 전달하거나, 배열을 풀어서 각각의 요소로 넣을 때에 사용한다.
function sum(x, y, z) {
return x + y + z;
}
const numbers = [1, 2, 3];
sum(...numbers) // 6
파라미터를 배열의 형태로 받아서 사용할 수 있다. 파라미터 개수가 가변적일 떄 유용하다.
function sum(...theArgs) {
return theArgs.reduce((previous, current) => {
return previous + current;
});
}
sum(1,2,3) // 6
sum(1,2,3,4) // 10
구조 분해 할당은 Spread 문법을 이용하여 값을 해체한 후, 개별 값을 변수에 새로 할당하는 과정을 말한다.
배열
const [a, b, ...rest] = [10, 20, 30, 40, 50];
// 질문: a, b, rest는 각각 어떤 값인가요?
객체
const {a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40}
// 질문: a, b, rest는 각각 어떤 값인가요?