1、call apply bind
2、防抖、节流
3、科里化 1、add(1)(2)(3) 2、add(1)(2,3) 3、add函数化
//1、伪数组转数组
Array.prototype.slice.call(arguments)
Array.from(arguments)
//2、数组的累加
args.concat(Array.from(arguments))
args.concat([...arguments])
args.push(...newArgs);
//3、求数组的和:
for ( i of args){sum2 += i}
args.reduce( (sum,currentValue) => sum+currentValue)
//4、函数
1、return:函数如果没有返回,则是返回undefined
2、arguments:在哪一个函数arguments,则arguments为对应的参数
3、lengths:函数的参数个数可以直接通过函数数的.length属性来访问 args.length >= fn.length
4、嵌套:如果返回函数,则返回函数体。函数体+(),才会继续执行。
5、闭包。变量+return就是闭包。
//5、闭包