JavaScript - this与函数的四种调用方式

在 ES6 之前,函数内部 this 的指向是由该函数的调用方式来决定的

函数调用方式

使用函数调用方式调用函数时,函数内部的 this 指向 window 对象




    
    Document




    





    
    Document




    


方法调用方式

使用方法调用方式调用函数时,函数内部的 this 指向调用该函数的对象




    
    Document


    
标签



    
    Document


    
标签

构造函数调用方式

使用构造函数调用方式调用函数时,函数内部的 this 指向调用该函数的实例对象




    
    Document




    





    
    Document




    


上下文调用方式

  • call 方法和 apply 方法的第一个参数决定了函数内部 this 的指向
    1)如果第一参数是对象类型,那么函数内部的 this 指向该对象
    2)如果第一参数是 null、undefined,那么函数内部的 this 指向 window 对象
    3)如果第一参数是数字,那么函数内部的 this 指向 Number 构造函数的实例
    4)如果第一参数是字符串,那么函数内部的 this 指向 String 构造函数的实例
    5)如果第一参数是布尔值,那么函数内部的 this 指向 Boolean 构造函数的实例



    
    Document




    


call 方法和 apply 方法的不同之处:传参的形式不同




    
    Document




    


  • bind 方法



    
    Document




    


你可能感兴趣的:(JavaScript - this与函数的四种调用方式)