2017-01-18 7 views
-2

私には2つの質問があります:関数内での(ミリ秒)の意味は何ですか?

1:括弧内の "millis"とは何ですか?それはミリ秒ですか、そうであればタイマーなのでしょうか?

2:それは事前にif(lastTime) mean if(lastTime == 0)?

感謝を意味しています!

let lastTime; 

function callback(millis) { 
    if(lastTime) { 
     update(millis - lastTime) /1000; 
    } 
    lastTime = millis; 
    requestAnimationFrame(callback); 

} 
+0

これは単なるパラメータの名前です。ドキュメントが見つからないので、関数が時間を扱うようだから、それは – Sirko

+1

の略であると推測することができます。私はそれが 'milliseconds'の略です。 –

答えて

0

milliscallback()関数の)パラメータであり、それはミリ秒のいくつかの数を指します。

機能は、それが最後に呼ばれたので、秒単位で時間を計算することがを表示されますが、そうならば、バグがあります:

おそらく
update(millis - lastTime) /1000; 

update()は経過時間で呼び出されることになっています秒で、それは代わりに、次のようになります。

update((millis - lastTime)/1000); 

現在のバージョンは、他の一方で、戻り値を分割しようとしているupdate()の1000であり、これは最高ではない。

コードの多くを見ることなく、目的が正確であるかどうかを確認することは困難です。関数は、本質的に繰り返しさえ提供millis引数を持たずに、ほとんどの時間を自分自身を呼び出すようたとえば、最後の行...

requestAnimationFrame(callback); 

...は、一種の奇妙なようです。最後に呼び出されてからどれくらいの時間が経過したのかと共に、requestAnimationFrame()リクエストの外に呼び出されたときにいつでもupdate()に通知することが目的かもしれませんが、大きなプログラムの目的が何であるかを伝えるための十分なコードはありません。

+0

ありがとうございました! – kon

関連する問題