我試圖讓未來與封閉:在JavaScript中關閉 - 什麼是錯的?
function func(number) {
var result = number;
var res = function(num) {
return result + num;
};
return res;
}
var result = func(2)(3)(4)(5)(3);
console.log(result); // 17
我需要接受2 + 3 + 4 + 5 + 3 = 17 但我得到了一個錯誤:未捕獲的類型錯誤:數量不是一個函數
這傷害了我的大腦。你可以返回一個函數或數字,而不是兩個.. –
@MikeChristensen:其實,你可以通過檢查'arguments.length'同時返回。 – SLaks
@SLaks - 哦,並把一個'()'在鏈的末尾?是的,這會是一個令你的同事惱火的聰明方式。 –