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事件回调函数为了简便,还是不太推荐使用箭头函数