자바스크립트 (나머지 매개 변수, 전개구문)

Junho Yun·2022년 11월 17일
0

하루만에배우기

목록 보기
8/11
post-thumbnail

나머지 매개 변수

(화살표함수에 없음)

... 이렇게 사용합니다.

함수에 인수를 전달할 때, 인수의 개수는 제한이 없습니다. 호출할 때 인수의 개수가 달라고 에러가 발생하지 않습니다. (더 많이 전달 => 개수에 맞게 앞순서만 사용, 전달 x => undefined 전달)

함수의 인수를 얻는 방법 2가지
1. arguments
2. 나머지 매개 변수

arguments

  • 함수로 넘어 온 모든 인수에 접근
  • 함수내에서 이용 가능한 지역 변수
  • length 와 index를 가짐
  • Array형태의 객체!
  • 즉, 배열의 내장 메서드(forEach, map) 없음
fuction showName(name){
	console.log(arguments.length); // 2 받은 인수의 개수 
    console.log(arguments[0]); // 'Mike'
    console.log(arguments[1]); // 'Tom'
}

showName('Mike', 'Tom');

나머지 매개 변수 (ES6 사용가능)

나머지 매개 변수는 정해지지 않은 개수의 인수를 배열로 나타낼 수 있도록 합니다.

배열의 메소드들을 사용할 수 있습니다.
인수를 받을 때 항상 제일 마지막에 위치해야합니다.
(당연히 계속 받을 수 있는거니까)

fuction add(...numbers){
	let result = 0;
    number.forEach((num)=>(result += num));
    console.log(result);
}

add(1,2,3);
add(1,2,3,4,5,6,7);


fuction User(name,age,...skill){
	this.name = name;
    this.age = age;
    this.skills = skills;
}

const user1 = new User('Mike', 30, "html", "css");
const user2 = new User('Tom', 20, "JS", "React");
const user3 = new User('Jane', 10, "English");

전개 구문

전개구문을 활용하면 손쉽게 객체나 배열 재구성 할 수 있습니다.

// 전개 구문 : 배열
let arr1 = [1,2,3];
let arr2 = [4,5,6];

let result = [...arr1, ...arr2]; // 중간에 사용할 수도 있습니다.

console.log(result); // [1,2,3,4,5,6]


// 전개 구문 : 객체
let user = {name : "Mike"};
let info = {age : 30};
let fe = ["JS","React"];
let lang = ["Korean","English"];

user = {
	...user,
    ...info,
    skills: {...fe,...lang},
}

console.log(user);
profile
의미 없는 코드는 없다.

0개의 댓글