2.1函数提升
函数提升与变量提升比较类似,是指函数在声明之前即可被调用。
 
 总结:
 1.函数提升能够使函数的声明调用更灵活
 2.函数表达式不存在提升的现象
 3.函数提升出现在相同作用域当中
2.2函数参数
1.动态参数
 arguments 是函数内部内置的伪数组变量,它包含了调用函数时传入的所有实参
 
 总结:
 (1)arguments是一个伪数组,只存在于函数中
 (2)arguments 的作用是动态获取函数的实参
 (3)可以通过for循环依次得到传递过来的实参
2.剩余参数
 剩余参数允许我们将一个不定数量的参数表示为一个数组
 
 (1)… 是语法符号,置于最末函数形参之前,用于获取多余的实参
 (2)借助 … 获取的剩余实参,是个真数组
 
 开发中,提倡多使用 剩余参数
2.3展开运算符
1.展开运算符 (…),将一个数组进行展开
 
 2.典型运用场景:求数组最大值(最小值)、合并数组等
 
 区别:展开运算符or剩余参数
 (1)剩余参数:函数参数使用,得到真数组
 (2)展开运算符:数组中使用,数组展开
2.3箭头函数(重要)
目的:引入箭头函数的目的是更简短的函数写法并且不绑定this,箭头函数的语法比函数表达式更简洁
 使用场景:箭头函数更适用于那些本来需要匿名函数的地方
 一、语法
 语法1:基本写法
 
 语法2:只有一个参数可以省略小括号
 
语法3:如果函数体只有一行代码,可以写到一行上,并且无需写return直接返回值
 
 例如
 
 语法4:加括号的函数体返回对象字面量表达式
 
 
小结:
 
 二、箭头函数参数
 1.普通函数有arguments动态参数
 2.箭头函数没有arguments动态参数,但是有 剩余参数…args
 
三、箭头函数 this
 在箭头函数出现之前,每一个新函数根据它是被如何调用的来定义这个函数的this值,非常麻烦
 箭头函数不会创建自己的this,它只会从自己的作用域链的上一层沿用this。
 
 
 在开发中【使用箭头函数前需要考虑函数中this的值】,事件回调函数使用箭头函数时,this 为全局的window,因此DOM事件回调函数为了简便,还是不太推荐使用箭头函数



















