zoukankan      html  css  js  c++  java
  • javascript之this指向

     情况一:

         如果一个函数中有this,但是没有被上一级调用,this指向window

        例:

         function a(){

              var num='11';

              console.log(this.num);  //undefined

              console.log(this)           //window

        }

        a()

    情况二:

        如果一个函数有this,该函数被上一级调用,this指向上一级函数

        例:

         var o={

             a:'11',

             b:function(){

                 console.log(this.a);     //11

                 console.log(this)         //o

            }

       }

       o.b();

    情况三:

       如果一个函数中有this,且该函数包含多个对象,尽管这个函数被最外层调用,this仍指向它的上一级对象

       例:

       var o=function(){

             a:'11',

             b:function(){

                  a:'22',

                  c:function(){

                          console.log(this.a);

                          console.log(this)

                  }

             }

        }

        o.b.c();

        //22    b{}

        var j=o.a.b();

        j()

       //undefined  window

        赋值给变量j的时候并没有执行所以最终指向的是window

  • 相关阅读:
    SVN Monitor工具推荐
    Linux Netbeans汉化不全
    PMWiki安装教程
    JIRA重启服务器后需要重启TOMCAT的解决
    SVN分支与合并
    WCF无法捕获FaultException
    非完美C++ Singleton实现[转载]
    C语言结构体的对齐原则
    C++ STL 学习笔记
    字符串笔试题
  • 原文地址:https://www.cnblogs.com/wdxue/p/6898184.html
Copyright © 2011-2022 走看看