1.call要逐个传入参数
2apply方法的必须
function curry(fn){var args=Array.prototype.slice.call(arguments,1);return function(){var innerArgs=Array.prototype.slice.call(arguments);var finalArgs=args.concat(innerArgs);console.log(finalArgs);return fn(finalArgs);//正确写法fn.apply(null,finalArgs); };}function add(num1,num2){return num1+num2;}var curriedAdd=curry(add,5);console.log(curriedAdd(3));//输出5,3undefined,因为add没第二个参数,第一个参数为数组