본문 바로가기
Lecture/Javascript

javascript bind() 메소드와 rest파라미터

by 손프로 2023. 7. 17.

bind() 메소드 : 이벤트리스너 혹은 콜백함수 등과 같이 간접적으로 함수를 호출할 경우

하나의 메소드를 사용하고 싶으나 파라미터를 다르게 던지고 싶을 경우가 있다.

 

이럴 경우 bind() 메소드로 간접 호출하려는 함수의 파라미터에 값을 넣어줄 수 있다.

btn.addEventListener('click',testFunc.bind(this, false));

const testFunc = (boolean) => {
	if (boolean) {
    	console.log('true');
    } else {
    	console.log('false');
    }
};

 

rest파라미터 : for문을 돌려 합을 구하는 함수가 있고 인자로 들어갈 값의 갯수는 정해져 있지 않을 때

인자 부분에 '...numbers' 와 같이 앞에 점 세개를 추가하여 변수를 받을 수 있다.

이럴 경우 받아오는 파라미터의 수 만큼 자동으로 값이 들어가는 배열이 만들어지고

해당 배열을 활용하여 원하는 로직을 짜면 된다.

testFunc(1,2,3,4,5,6);

const testFunc = (...numbers) => {
	for (let num of numbers) {
    	console.log(num);
    }
}
    
result : 123456

 

댓글