js關(guān)于setInterval 傳入類似于對(duì)象參數(shù)?
這個(gè)問什么setInterval沒有重復(fù)調(diào)用函數(shù)?
<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>
2017-02-06
setInterval(c.xx(c),50);?這句話是把函數(shù)調(diào)用后返回值給了setInterval,第一次調(diào)用時(shí),會(huì)執(zhí)行c.xx(c),由于c.xx(c)中沒有return任何值,函數(shù)默認(rèn)返回了undefined,當(dāng)?shù)诙握{(diào)用時(shí),setInterval的第一個(gè)參數(shù)就變成了undefined,就不會(huì)重復(fù)調(diào)用了。
可以把setInterval(c.xx(c),50); 改成setInterval('c.xx(c)',50); 或者setInterval(function(){c.xx(c)},50);?