クロージャーの合計
importance: 4
sum
と呼ばれる、このような挙動を示す関数を記述してください:sum(a)(b) = a+b
。
そのとおりです。まさにこの通りに、二重かっこを使用して記述してください(タイプミスではありません)。
たとえば
sum(1)(2) = 3
sum(5)(-1) = 4
2つ目のカッコが機能するには、1つ目のカッコは関数を返却する必要があります。
次のように記述します。
function sum(a) {
return function(b) {
return a + b; // takes "a" from the outer lexical environment
};
}
alert( sum(1)(2) ); // 3
alert( sum(5)(-1) ); // 4