一、高阶函数:分为自定义高阶函数和内置高阶函数
1、自定义高阶函数
2、内置高阶函数
比较常用的内置高阶函数:sorted、map、filter等
以前文章讲过,详细了解请点击 【万能排序sorted】 和 【对序列做处理mapfilter】
二、闭包函数:必须满足以下三点
1、不传参数的闭包函数
闭包模板一:不传参数
2、传一般参数的闭包函数
闭包模板二:传参数1(非函数做参数)
3、传函数名参数的闭包函数(装饰器)
闭包模板三:传参数2(函数名做参数,就是装饰器)
三、装饰器:把函数名作为参数传递的闭包函数。
另一种解释:高阶函数是把函数作为参数传递,所以装饰器可以理解为高阶函数和闭包的结合。
- 1--作用:添加额外的功能(有些函数是不能随便改的;很多函数需要增加相同的功能)。
从最简单模板到最全模板讲解
1、装饰器模板样式一(装饰器无参数,被装饰函数无参数、无返回值)
2、装饰器模板样式二(装饰器无参数,被装饰函数有参数、无返回值)
3、装饰器模板样式三(装饰器无参数,被装饰函数通用参数、无返回值)
4、装饰器模板样式四--最通用可以装饰任何函数(装饰器无参数,通用被装饰函数)
5、装饰器模板样式五(装饰器有参数,被装饰函数无参数)
6、装饰器模板样式六(装饰器有参数,被装饰函数有参数)
7、装饰器模板样式七--最通用可以装饰任何函数(装饰器有参数,通用被装饰函数)
下篇文章再讲解一下,装饰器类的实现。
如果你喜欢,请点赞、关注或转发哦!感谢支持!