问答详情
源自:2-5 右边控制条支持拖拽(Resizeable Panel)

moving = setInterval(on_move,10);中写成moving = setInterval(on_move(),10)为什么会不对呢?

提问者:showonne 2014-10-20 08:46

个回答

  • Lyn_Tech
    2014-10-20 11:13:22
    已采纳

    setInterval(  Function , Time  )


    第一个参数要求是一个函数。


    on_move 是一个变量,之前应该是设置了  on_move = function(){ } , 所以 on_move  是一个函数。

    但是 on_move() 是执行一个函数,得到一个反回值。如果返回值是一个函数的话就没有问题。


     》》》》》


    所以 

    moving = setInterval(on_move(),10)

    的执行结果是:


    1. on_move() 执行一次,返回 undefined。

    2. setInterval 循环执行,咿~ undefined 不是一个函数哎~ ,果断报错,继续第二步。

  • Lyn_Tech
    2014-10-20 11:16:14

    得到一个返回值