以下兩個代碼示例之間是否有區別?無參構造函數調用需要parens'()嗎?
var label:Label = new Label;
var label:Label = new Label();
我問,因爲網上的一些教程警告總是使用'()'。
以下兩個代碼示例之間是否有區別?無參構造函數調用需要parens'()嗎?
var label:Label = new Label;
var label:Label = new Label();
我問,因爲網上的一些教程警告總是使用'()'。
沒什麼區別,它絕對一樣,但是使用父母的AS3編碼風格更常見。
在空構造的情況下(最喜歡在顯示列表中的對象的諸如DisplayObject
,Sprite
,MovieClip
等)也絕對沒有差異
當創建一個新的對象,即,具有new
,那麼沒有區別。所以,new MyClassWithNoArgument
和new MyClassWithNoArgument()
是一樣的。
然而,通常aMethod
和aMethod()
不相同。 aMethod
是一個Function
對象,並在函數對象上使用括號來調用該對象。
構造函數在與new運算符一起使用時可以接受零參數沒有區別。即使括號'()'被隱式添加,您應該使用它們來保證您調用函數的一致性/清晰性,而不是傳遞該函數的引用。