函数的封装是在函数功能都正常的基础上进行的,只考虑参数如何设置
函数的封装是具象->抽象->具象的过程,即从实际的函数抽出抽象的函数,再通过实际的运用来验证封装的函数是否正确
在JS中函数的封装有以下几种情况
1.变量换成形参
这是函数封装最初级的操作,把用到的变量全部换成形参即可,调用函数的时候传入实参就可以
2.在函数中还想执行其他的功能
此时可以用回调函数实现,实参写回调函数,形参里的参数写想要执行的东西
3.多形参情况
形参数量超过三个时,建议用对象将这些数据打包成一个对象,这个对象的键就是形参,值就是实参,因为这个数据是对象,所以所有的数据都可以放,包括回调函数
4.在局部作用域定义全局函数
绑定到window即可
例子jsonp解决跨域
上述这些情况实际的案例可以看ajax的封装
5.参数是函数的情况
当有大量相似代码时,封装这个函数,可以将不同的代码当作实参,当实参代码中的数据不存在时.再通过封装函数中的形参数作为形参传入到实参即可