0

Math.floorメソッドがゼロを返す理由をお聞きしたいと思います。これは私のコードです:

var duration = 217;

var sec = Math.floor((duration / 1000) % 60);
var min = Math.floor((duration / (60 * 1000)) % 60);

何が問題なのですか?

4

2 に答える 2

6
var sec = Math.floor((duration / 1000) % 60);

(217 / 1000) % 60 = 0.217

0.217 の下限値は 0 です。

于 2012-07-08T12:50:30.390 に答える
2

is の結果は に(217/ 1000) % 60切り捨て0.217られMath.floor()ます0

同様に、(217/ (60 * 1000)) % 600.0036166666666666665に切り捨て0ます。

Math.floor()したがって、「数値以下の最大の整数を返す」の正しい動作が見られます。

于 2012-07-08T12:50:49.030 に答える