目标:
1:掌握将函数名赋值给变量并且打印,会打印出什么
2:掌握什么是函数的闭包
一:将函数名赋值给变量并且打印,会打印出什么
答:函数变量名保存的是这个函数在内存中存储的十六进制的地址
注意事项:函数名只是函数地址的一个引用,也就是一个变量 它可以赋值给其他变量,也可以被其他值赋值
图示:
代码:
二:了解函数的闭包
闭包概念:在一个外函数中定义一个内函数,内函数里运用了外函数的临时变量,并且外函数返回值是内函数的函数名(引用)
函数形成闭包的条件:
1:在外函数内部又定义了一个内函数
2:内函数可以引用(使用)外部函数的临时变量(内部函数引用外部变量)
3:外部函数返回值是内部函数的引用(函数名)
图示:
注意:下面代码的result(10,20) 不指定参数10,也是可以打印10 的,因为这个参数定义的形参就是和外部函数一致的