美文网首页
关于JavaScript中的this

关于JavaScript中的this

作者: 橘子柚子橙子_ | 来源:发表于2018-09-23 23:14 被阅读0次

    在JavaScript中this的值很灵活,时常让人感到疑惑。为了更好的理解它,在参考了网络资料后,整理这篇内容。参考资料已经在文末列出。

    在下面几种情况中,this的指向各不相同:

    1. 全局范围内:

    this
    

    this指向的是全局对象。
    2. 函数调用:

    foo()
    

    这里的this指向的也是全局对象。
    3. 方法调用:

    Obj.fun()
    

    此处的this指向的是Obj对象
    4. 构造函数:

    new Fun()
    

    在函数内部,this指向的是新创建的对象
    5. 显示的设置this:

    function fun(a, b, c) {}
    let test = {}
    fun.apply(test, [1, 2, 3])
    

    当使用applycall时,函数内的this会被设置为函数调用的第一个参数,在上面的例子中,this指向的是test
    如果未设置第一个参数,则this指向的是全局对象。
    6. 箭头函数
    在箭头函数中,this被设置为它被创建时的上下文。


    等有时间了,更新一些例子进来。

    相关文章

      网友评论

          本文标题:关于JavaScript中的this

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