使用閉包求和
重要性:4
撰寫函數 sum
,其運作方式如下:sum(a)(b) = a+b
。
是的,就是這樣,使用雙括號(不是筆誤)。
例如
sum(1)(2) = 3
sum(5)(-1) = 4
要讓第二個括號運作,第一個括號必須傳回一個函數。
像這樣
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