JS 部分实例化方法(Curry)


function
add(a, b, c, d, e) { var array = []; for (i = 0; i < arguments.length; i++) { array.push(arguments[i]); } if (array.length == 6) { return a + b + c + d + e; } else { var addother = function addother() { for (i = 0; i < arguments.length; i++) { array.push(arguments[i]); } if (array.length >= 5) { return array[0] + array[1] + array[2] + array[3] + array[4]; } else { return addOther } }; addother.toString = function () { var str = 0; for (i = 0; i < array.length; i++) { str = str + array[i]; } return str; }; return addother; } } var a=add(1,3) a.toString()//4; a(2,4,5)//15

 

posted @ 2017-09-29 13:42  笑逗逗  阅读(237)  评论(0编辑  收藏  举报