为多个实例递归调用settimeout总是返回最新的实例

时间:2014-12-23 23:18:05

标签: javascript

我正在尝试运行下面的代码,

 var sampleObject= function(data){
      this._data=data;
    }
    sampleObject.prototype.test = function(){
        _this=this; 
        setTimeout(function(){
            console.info(_this._data);
            _this.test();
        },1000,this);
    }
    var sample1=new sampleObject(1);
    var sample2 =new sampleObject(2);
    sample1.test();
    sample2.test(); 

问题是返回的输出是 2 2 2 2

但我想要它 1 2 1 2 问题是我在做什么?

0 个答案:

没有答案