剪头函数和普通函数之间的区别

299 阅读1分钟

说起函数,不得不说的便是剪头函数,而我们日常工当中使用剪头函数最多的地方应该便是在回调函数当中了,而它和普通函数之间的区别也就成为了他的缺点,也是亮点。

一、箭头函数没有this ,所有他的this则就是上级作用域当中的this,基于这个特性。所以,我们经常会在回调函数当中用到它,没有this,其实也就决定了它不能被 new 不能被当做类,也就不能有call或者bind因为这种方式其实对它也就失去了使用的意义;

二、剪头桉树没有 arguments 没有arguments这样其实也不算是缺点了,我们甚至可以基于ES6的剩余运算符去拿到与arguments类似效果的实参集合去用;

let a = (...argu)=>{
  console.log(...argu)
    
}

之所以不能被new 根本原因是因为箭头函数并没有 constructoer 和 原型属性