我怎樣才能得到,因爲午夜1970年1月1日在AS3毫秒的當前數量,而不必使用new操作符?我在問,因爲我需要每秒鐘處理大約100次,並且目前試圖減少堆分配以保持gc低。AS3獲取當前的時間,而無需創建新的對象
回答
你應該創建它一次,然後添加毫秒,因爲與getTimer是創造,通過();您還需要一個幫助變量來存儲您的數據創建時間;
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.utils.getTimer;
public class Main extends Sprite
{
private var _myLittleDate:Date;
private var _myLittleDateCreationTime:Number;
public function Main():void
{
_myLittleDate = new Date(); //Our first and only object creation
_myLittleDateCreationTime = getTimer(); //Store it's creation time
addEventListener(Event.ENTER_FRAME, onEnterFrame); //Check function
}
private function onEnterFrame(e:Event):void
{
_myLittleDate.time += (getTimer() - _myLittleDateCreationTime);
trace(_myLittleDate); //You get valid, refreshed data object here
_myLittleDateCreationTime = getTimer(); // Don't forget to update your initial time
//It's accurate since method .getTimer() is accurate itself
//You can even compare two Data object by creating another and tracing it right here
}
}
}
如果你只需要知道,因爲最後一幀什麼時候已經過去了,不知道星期幾,或者一年,你可以使用getTimer();它自己,它的效率更高,我使用
嘿!這看起來不錯!但我認爲這將是最好不要+ =毫秒,因爲這將在每次迭代中增加一個舍入誤差,並且相反在每次迭代得到原來的時間和getTimer(),並從中計算出當前時間。無論如何,我將此標記爲正確答案,謝謝! – user1282931
這是場「時間」是從1970年1月1日通過的毫秒數,而當你添加具有getTimer()的東西,它會自動重新計算所有需要的數據,如一週中的一天等) – KumoKairo
僅供參考,'getTimer() '返回一個'int'值,而不是'Number'。 – Bart
的Util方法:
// Get time since the epoch and time since the VM was started
private static const dateTime:Number = new Date().time;
private static const dateTimestamp:uint = getTimer();
/**
* Current time in ms
*/
public static function getCurrentTime():Number
{
return dateTime + (getTimer() - dateTimestamp);
}
- 1. 在Javascript中獲取當前時間而不創建Date對象?
- 2. Java獲取當前日期而不創建新的Date對象
- 3. 獲取對象創建當前Object
- 4. C++獲取類成員的默認值,而無需創建新的對象
- 5. 獲取時間對象創建
- 6. 修改對象的關鍵點,而無需創建新的對象
- 7. 如何獲取創建當前對象的類?
- 8. ,而無需創建新行
- 9. 當選擇新對象時,AS3取消選擇其他對象
- 10. FORMDATA對象添加整個窗體,而無需創建新的對象
- 11. 如何更改對象的參數而無需創建新對象?
- 12. 如何獲得當前時間而無需每次重新加載頁面?
- 13. C#對象創建需要時間
- 14. 無時間獲取當前日期
- 15. Java新手:如何將對象的當前狀態分配給另一個對象,而無需建立引用?
- 16. AS3補間動態創建的對象以及其他對象
- 17. 如何獲取保存的對象/新創建的對象
- 18. ,而無需創建新的列表
- 19. 獲取當前時間?
- 20. FreeRTOS獲取當前時間
- 21. 獲取當前時間jPlayer
- 22. 回到先前的屏幕,而無需創建新實例
- 23. Python - 創建新的模型對象導致更新以前創建的對象
- 24. DataGridView獲取當前選定的對象
- 25. 獲取當前對象的功能?
- 26. 輸出的當前日期和時間而無需刷新頁面
- 27. Xcode - 如何在xcode中存檔時獲取當前時間(創建時間)?
- 28. 使用創建的時間戳而不是當前日期MongooseJS
- 29. 如何獲取對象類型的傳遞給函數匿名類型,而無需創建該對象
- 30. 當對象被創建時
是否真的需要每秒100次? – prototypical
Date類似乎有毫秒等設置方法,所以我想你可以手動更新它。如果需要精確度的話,我不確定我是否會相信閃存定時器。 – prototypical
不確定您的使用情況,但此主題出現在本主題的討論中。 http://forum.starling-framework.org/topic/smooth-movement-independent-from-frame-rate – prototypical