箭头函数和普通函数的区别

2018-11-08  本文已影响0人  郭静135

什么是箭头函数?

        箭头函数就是没有function关键字,而是一个类似箭头的函数:

        相当于

它们之间的区别:

箭头函数作为匿名函数,是不能作为构造函数的,不能使用new

箭头函数不绑定arguments,取而代之用rest参数…解决

箭头函数会捕获其所在上下文的 this 值,作为自己的 this 值

使用call()和apply()调用

        通过 call() 或 apply() 方法调用一个函数时,传参方式不同

箭头函数没有原型属性

箭头函数不能当做Generator函数,不能使用yield关键字

箭头函数不能换行

对于函数的this指向问题,我总结了以下几个方面:

1. 在普通函数里谁调用就指向谁

2. 在事件处理函数里,第一层的this指向函数触发事件的那个对象

3. 在严格模式下,普通函数里的this为underfind

4. 箭头函数指向定义时所在的作用域中的this指向

5.函数在预编译过程中this指向window

6.在全局作用域里this指向window

7. Call和apply可以改变函数运行时的this指向

8. 使用new 实例化对象,在构造函数中的this指向实例化对象。

上一篇 下一篇

猜你喜欢

热点阅读