为了账号安全,请及时绑定邮箱和手机立即绑定

js关于setInterval 传入类似于对象参数?

这个问什么setInterval没有重复调用函数?

<script type="text/javascript">

function C(){this.test = "abc";}

var c = new C();


C.prototype.xx = function(obj){console.log(obj.test);}

c.xx(c);c.xx(c);c.xx(c);c.xx(c);c.xx(c);c.xx(c);

setInterval(c.xx(c),50);

</script>




正在回答

1 回答

setInterval(c.xx(c),50); 这句话是把函数调用后返回值给了setInterval,第一次调用时,会执行c.xx(c),由于c.xx(c)中没有return任何值,函数默认返回了undefined,当第二次调用时,setInterval的第一个参数就变成了undefined,就不会重复调用了。

可以把setInterval(c.xx(c),50); 改成setInterval('c.xx(c)',50); 或者setInterval(function(){c.xx(c)},50); 


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

js关于setInterval 传入类似于对象参数?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信