箭头函数是为了消除函数的二义性。
1. 二义性
函数的二义性指函数有不同的两种用法,就造成了二义性,函数的两种用法:1. 指令序列。2. 构造器
1.1 指令序列
就是调用函数,相当于将函数内部的代码再从头执行一次。
1.2 构造器
通过 new 函数 来创建实例。
2. 消除二义性
ES6 为了消除二义性,可以使用类,箭头函数
2.1 类
使用类后,不能在通过 类() 来调用。
2.2 箭头函数
使用箭头函数后,不能再通过 new 来调用这个函数。所以跟面向对象有关的东西,箭头函数都没有。比如 new、this 指向、原型。所以箭头函数不能使用 new,并且没有 this 和原型。