工作中遇到的问题【js】

  • Post author:
  • Post category:其他




js



关于setInterval值执行一次及this的作用域

原代码

 toplay(){
        return setInterval(this.moveright(),2000);
    }

查询后得知

moveright()

应改为

movright



查询博客:

关于setInterval只执行一次的原因



JavaScript定时器setInterval()只执行一次解决方法

进一步修改

 toplay(){
        return setInterval(this.moveright,2000);
    }
 toplay(){
        return setInterval(function(){
       	 this.moveright()
        },2000);
    }

都报错this.moveright不是函数,再次解决发现是this的指向域问题,继续查询资料最终修改

 toplay(){
        var _this=this;
        var timer=function(){
            console.log(_this)
            _this.moveright();
        }
        return setInterval(timer
        ,2000);
    }

查询博客:

JS中的this指向



版权声明:本文为qq_45190523原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。