4
나는 페이스 북의 자바 스크립트의 일부를 읽고, 나는의 목적을 알아낼 수있는 흥미로운 기능을 통해 온했다 : 나는을 말할 수있는 지금까지이 기능은 Facebook의 JavaScript 소스에서 무엇을합니까?
function bagof(a) {
return function() {
return a;
};
}
을 :
bagof
을 매개 변수a
을 허용하는 함수입니다.bagof
은 즉시 익명의 함수를 반환합니다.- 그런 다음 반환 된 함수는 원래 매개 변수
a
을 반환합니다.
내가 bagof
의 사용이 같을 것이라고 가정합니다 :
newFunction = bagof("This is the data");
console.log(newFunction()); //Logs "This is the data"
점은 무엇입니까? a
에 전달 된 변수 또는 함수를 직접 사용하거나 저장하지 않는 이유는 무엇입니까?
The source file에는 응용 프로그램에 많은 유틸리티 기능이있는 것처럼 보입니다.
그래서, 함수가 정말 뭔가를 "할"하지 않지만, 쉽게 다른 기능을 만들기위한 속기의 역할 :
당신은 간단하게 말할 수 있습니까? –
@MichaelJasper : 아니오, 부작용이없고 아무 것도 계산하지 않습니다. 그것의 유일한 목적은 함수를 만드는 것입니다. [factory method pattern] (http://en.wikipedia.org/wiki/Factory_method_pattern) –