2017-01-12 2 views
-1

私は小さな問題をできるだけ簡単に説明しようとしています。Newbie here:JavaScriptでの計算が遅い

data.truck.fuelDiff = utils.formatFloat(data.truck.fuel, 10); 
data.truck.fuelDiff2 = utils.formatFloat(data.truck.fuel, 10); 

data.truck.fuelConsumption = data.truck.fuelDiff - data.truck.fuelDiff2; 

これは、同じ供給元から1秒差で2つの値を測定することによって燃料消費率を計算する簡単なコードです。

したがってfuelDiff2は、fuelDiff値から1秒後に計算する必要があります。

setinvertalまたはsettimeoutでコードを実行することは不可能であることを知りました。コードは初期化された後に無期限に実行されるためです。

今すぐfuelDiff2の値を1秒前に取得またはコピーし、fuelDiffの値をリアルタイムで残すソリューションを探しています。

+3

あなたは 'clearInterval'を正しく使うことができますか? 'setTimeout'は無限に実行されません、それは* timeout *です。 – Li357

答えて

0

setTimeoutは無期限に実行されません。代わりに、指定された時間だけ待機して、提供された機能を実行します。

data.truck.fuelDiff = utils.formatFloat(data.truck.fuel, 10); 
setTimeout(function() { 
    data.truck.fuelDiff2 = utils.formatFloat(data.truck.fuel, 10); 
    data.truck.fuelConsumption = data.truck.fuelDiff - data.truck.fuelDiff2; 
}, 1000); 
関連する問題