[javascript] Underscore.js를 사용하여 함수의 인자를 고정하는 방법은 어떻게 되나요?
함수의 인자를 고정하는 것은 Underscore.js의 partial
함수를 사용하여 수행할 수 있습니다.
const _ = require('underscore');
// 고정되지 않은 매개변수를 갖는 함수
function add(a, b, c) {
return a + b + c;
}
// 인자를 고정하여 새로운 함수 생성
const add5 = _.partial(add, 5);
console.log(add5(3, 2)); // 출력: 10
위의 예시에서 add
함수는 3개의 매개변수를 받아들이는 함수입니다. _.partial
함수를 사용하여 add
함수를 부분적으로 실행한 새로운 함수 add5
를 생성합니다. 이때, 첫 번째 인자로 고정된 값인 5가 전달됩니다.
그러면 add5
함수는 전달된 인자 5를 첫 번째 매개변수로 고정하고, 나머지 2개의 매개변수를 인자로 받아들이게 됩니다. 따라서 add5(3, 2)
를 호출하면 실제로는 add(5, 3, 2)
가 실행되어 결과값인 10이 출력됩니다.
이와 같이 Underscore.js의 partial
함수를 사용하면 함수에서 고정된 인자를 가지는 새로운 함수를 생성할 수 있습니다. 이렇게 생성된 함수는 기존 함수를 재사용하면서 특정 인자 값을 고정할 수 있어 편리하게 사용할 수 있습니다.