무제한의 매개 변수를 허용하는 함수을 어떻게 사용할 수 있습니까?
https://flaviocopes.com/how-to-unlimited-function-parameters-js/
전달하는 모든 문자열을 조인하는 join()이라는 함수가 있다고 가정 해 봅시다.
예를 들어 2 개의 문자열을 허용하는 프로토 타입을 작성합니다.
const join = (string1, string2) => {
return string1 + string2
}
우리가 그것을 부를 때, 우리는 전달하는 2 개의 인수를 연결하는 문자열을 얻습니다 :
join('hi', ' flavio') // 'hi flavio'
간단한 방법 중 하나는 다음과 같이 빈 문자열을 기본값으로 하는 추가 매개 변수를 추가하는 것입니다.
const join = (string1, string2, string3 = '') => {
return string1 + string2 + string3
}
그러나 이 방법은 확장성이 좋지 않습니다. 많은 수의 매개 변수를 추가해야 하고 코드가 매우 나빠 보일 수 있기 때문입니다.
대신 스프레드 연산자 (...)와 함께 사용하려는 매개 변수 이름을 사용하여 이 구문을 사용할 수 있습니다. 함수 내에서 매개 변수는 배열이므로 빈 문자열을 인수로 전달하여 .join() 메서드를 호출하여 포함 된 문자열을 간단하게 전달할 수 있습니다 (그렇지 않으면 기본적으로 문자열 사이에 쉼표를 추가하여 연결합니다).
const join = (...strings) => {
return strings.join('')
}
이 경우 화살표 함수에서 사용 가능한 암시 적 반환 구문을 사용하여 이를 단순화 할 수도 있습니다.
const join = (...strings) => strings.join('')
이전과 같은 방식으로 호출 할 수 있습니다.
join('hi', ' flavio') // 'hi flavio'
join('hi', ' flavio', ' it', ' is', ' a', ' beautiful day!') // ''hi flavio it is a beautiful day!'
등록된 댓글이 없습니다.