面试题系列---【箭头函数和普通函数的区别?箭头函数的优缺点?】

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

1.外形不同:箭头函数使用箭头定义,普通函数中没有

2.箭头函数都是匿名函数

3.箭头函数不能用于构造函数,不能使用new**

4.箭头函数中this的指向不同
(1)在普通函数中,this总是指向调用它的对象,如果用作构造函数,this指向创建的对象实例。

(2)箭头函数本身没有this,箭头函数的 this 永远指向其上下文的 this ,任何方法都改变不了其指向,如 call() , bind() , apply()

5.其他区别
(1)箭头函数不能用作Generator函数,不能使用yeild关键字。
(2)箭头函数不具有prototype原型对象。
(3)箭头函数不具有super。
(4)箭头函数不具有new.target。

(5)箭头函数不能使用arguments对象。

注意:this一旦被捕获,就不再发生变化

箭头函数有什么优缺点?

优点:写法很简洁,不用再定义this

缺点:this指向会难以阅读

原文地址:https://www.cnblogs.com/chenhaiyun/p/14911084.html