最近我需要調用一個偵聽器函數沒有實際的監聽器,如下:AS3:性能問題調用帶有空PARAM事件功能
foo(null);
private function foo(event:Event):void
{
//do something
}
所以我在想,如果有對此之間的性能顯著差異並用下面的,我在其中能防止空呼籲沒有監聽的功能,但我仍然能夠與聽衆也稱之爲:
foo();
private function foo(event:Event = null):void
{
}
我不知道羯羊,這只是一個問題風格,或實際上不好的做法,我應該wr迭代兩個相似的函數,一個和一個沒有事件參數(這看起來很麻煩)。
期待您的意見,thx。
我通常這樣做我自己。它似乎對性能沒有任何影響。它的方式比擁有2個類似的功能更好 - 可管理性更好。 – Shiki 2010-05-07 09:51:03
@Shiki:我不同意。它不分離責任。場景:如果您決定使用該函數作爲事件處理函數,並作爲第一類方法,然後決定,您希望實際評估處理程序中的某些事件數據,則確實存在問題。請看我的帖子的後半部分。 – back2dos 2010-05-07 11:12:44
+1 @ back2dos好點。如果你的處理程序做了很多事情,它確實會促成一個問題。我通常只爲相對較小的功能做這個。 – Shiki 2010-05-08 04:53:35