箭头函数是匿名函数,不能作为构造函数,不能使用new
箭头函数不绑定arguments,取而代之用rest参数...解决
箭头函数不绑定this,会捕获其所在的上下文的this值,作为自己的this值
箭头函数通过 call() 或 apply() 方法调用一个函数时,只传入了一个参数,对 this 并没有影响。
箭头函数没有原型属性
箭头函数不能当做Generator函数,不能使用yield关键字
总结
-
箭头函数的 this 永远指向其上下文的 this ,任何方法都改变不了其指向,如 call() , bind() , apply()
-
普通函数的this指向调用它的那个对象
一.外形不同:
箭头函数使用箭头定义,普通函数中没有。
二.箭头函数全都是匿名函数:
普通函数可以有匿名函数,也可以有具名函数。
三.箭头函数不能用于构造函数:
普通函数可以用于构造函数,以此创建对象实例。
四.箭头函数中this的指向不同:
this一直是让初学者比较头疼的概念。
在普通函数中,this总是指向调用它的对象或者,如果用作构造函数,它指向创建的对象实例。
五.箭头函数不具有arguments对象:
每一个普通函数调用后都具有一个arguments对象,用来存储实际传递的参数。
但是箭头函数并没有此对象。