• 箭头函数的一些问题


    this指向问题

    在普通函数中,this指向根据其使用场景不同改变。而箭头函数中的this始终指向其父级作用域

    箭头函数不能作为构造函数

    var Person = p => {
      this.name = p;  
    }

    此时的this并不是指向实例对象,而是指向父级作用域,指向window,所以不能作为构造函数

    箭头函数没有arguments

    如果想要实现不定参数的调用,就使用...剩余参数实现

    var sayHi = (b) => console.log(arguments)
    sayHi(10) // 报错
    var good = (...g) => console.log(g)
    good(1,2,3) // [1, 2, 3]

    箭头函数通过apply和bind调用,不会改变this指向,只会传入参数

    箭头函数没有原型属性

    var a = () => {}
    console.log(a.prototype) // undefined

    箭头函数在class中声明的方法是实例方法,不是原型方法

    class super{
      sayHi = () => {}  
    }
    var s1 = new super();
    var s2 = new super();
    
    s1.sayHi === s2.sayHi // false
  • 相关阅读:
    2021
    关于react,vue框架的搭建及bug处理
    centOS7使用
    git初探
    项目分享技术大会总结
    angular中的异常机制与异常之外的处理
    angluarjs中指令的使用方式
    Servlet知识总结
    有时候真的需要一点点改变
    story
  • 原文地址:https://www.cnblogs.com/ashen1999/p/12722458.html
Copyright © 2020-2023  润新知