美文网首页
箭头函数和普通函数的几大区别

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

作者: 别闹23 | 来源:发表于2019-10-30 15:12 被阅读0次

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

    function Fn() {
    console.log(1);      //1
    }
    let fn1 = new Fn();    

普通函数可以使用new实例化

 let Fn2 = () => {
 console.log(1);
 }
 let fn3 = new Fn2();
屏幕快照 2019-10-30 下午2.59.13.png

箭头函数使用new实例化会报错。


2.普通函数有arguments,箭头函数没有arguments

function fn() {
console.log(arguments)    //[1,2,3,4,5]
} 
fn(1,2,3,4,5)

箭头函数使用arguments会报错,可以使用...arg来解决

let fn = () => {
 console.log(arguments)
}
fn(1,2,3,4,5)
屏幕快照 2019-10-30 下午2.54.10.png
 let fn = (...arg) => {
 console.log(arg)    //[1, 2, 3, 4, 5]
 }
 fn(1,2,3,4,5)

3.箭头函数没有this,会捕获上下文的this值作为自己的this值

var obj = {
name:'haha',
 fn(){
 console.log(this);    //this指向obj
  }
}
obj.fn();


var obj = {
name:'haha',
fn:() => {
console.log(this)    //this指向window
 }
}
obj.fn();

4.箭头函数没有原型

 var a = ()=>{
 return 1;
 }

function b(){
 return 2;
}

console.log(a.prototype);  // undefined
console.log(b.prototype);   // {constructor: ƒ}

相关文章

  • 箭头函数和普通函数的主要区别是什么?

    箭头函数和普通函数的主要区别: this的指向问题,箭头函数是不存在this的(也是箭头函数和普通函数最主要的区别...

  • 函数的扩展

    函数的扩展 箭头函数和普通函数区别箭头函数没有this对象,箭头函数的里的this始终指向定义时所在对象,普通函数...

  • 2019-01-11

    ES6 箭头函数 箭头函数表示法:()=>console.log('Hello') 箭头函数和普通函数的区别 和普...

  • js理解普通函数和箭头函数

    普通函数: 箭头函数: 区别: 构造函数和原型 箭头函数不能作为构造函数 不能new。会报错 箭头函数没有原型属性...

  • 箭头函数和立即执行函数

    箭头函数 箭头函数和普通函数有什么区别?如果把箭头函数转换为不用箭头函数的形式,如何转换主要是this的差别,箭头...

  • 箭头函数和普通函数的几大区别

    1.箭头函数是匿名函数,不能作为构造函数,不能使用new 普通函数可以使用new实例化 箭头函数使用new实例化会...

  • 箭头函数和普通函数有什么区别?

    题目:箭头函数和普通函数有什么区别?箭头函数为什么不能用作构造函数? 参考答案 区别: 箭头函数在一些情况下书写更...

  • 改变this指向的方法

    箭头函数和普通函数的区别如下。 普通函数:根据调用我的人(谁调用我,我的this就指向谁) 箭头函数:根据所在的环...

  • 前端面试必会面试题

    1、箭头函数和普通函数的区别 1.箭头函数是匿名函数,不能作为构造函数,不能使用new 2.箭头函数不绑定argu...

  • 箭头函数

    引入箭头函数有两个方面的作用:更简短的函数并且不绑定this 普通函数和箭头函数的区别: 箭头函数的this指向规...

网友评论

      本文标题:箭头函数和普通函数的几大区别

      本文链接:https://www.haomeiwen.com/subject/pmbovctx.html