场景:定义了全局的函数,但是使用的时候,报错XXX 函数或者变量未定义,但实际上js中明明已经定义了且正确

问题原因:大多数是因为调用过程中this.functionname 或者this.varname中this指向的作用域问题

解决办法:在调用函数中,函数体最外层添加this指代,var self=this;

调用的函数中 :

functionA(){

  var self=this;  //函数体最外层定义this指代

  if(){

    self.functionB();   //第二层,可以正常使用

    for(){

      self.functionB();   //第三层可以正常使用

    }

  }

},

functionB(){

},

posted on 2019-05-28 12:06  小湾生产队队长  阅读(879)  评论(0编辑  收藏  举报