Re: [問題] AS2.0轉AS3.0 function問題

看板Flash作者 (星之影)時間14年前 (2011/04/13 14:38), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《bujinron (舞神論)》之銘言: : 就是 : AS2.0中 : var obj=new Object() : obj.init=function(){ : this.xx=5 : } : 接著呼叫 : obj.init() : trace(obj.xx) : 會出現5 : == : 那麼在AS3.0中 : 這樣要怎麼寫? : var obj=new Object() 可以 : 但是第二行似乎要寫成 : function init(){ : 而 : function obj.init(){ : 又不給過 : 請問這樣要怎麼轉譯? 照我理解你的寫法變成.... 1.宣告一個 Object 2.宣告一個 Function 把 obj.xx 設定成某參數 3.執行那個 Function 4.trace obj.xx AS3 可以這樣寫 var obj:Object = new Object; obj.xx = 5; trace(obj.xx) //5 也就是說直接設定下去就好了 如果一定要搞一個 Function 有兩種方式 function FuncName () { obj.xx = 5; } 這樣執行 FuncName 就會把 obj.xx 變成 5 好像也可以這樣寫... obj.funcName = Function () { obj.xx = 5; } -- 看那看不見的東西 聽那聽不到的聲音 不為眼前所見所迷惑... 是無法用眼語表達的 感受... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.18.19

04/13 17:05, , 1F
最下面那個方法跟我AS2的寫法依樣,AS3似乎不給過
04/13 17:05, 1F

04/13 17:11, , 2F
那就乖乖的另外寫吧 :P
04/13 17:11, 2F

04/13 17:13, , 3F
而且這種monkey patching在instance上亂插東西的寫法
04/13 17:13, 3F

04/13 17:13, , 4F
也比較不建議
04/13 17:13, 4F
文章代碼(AID): #1DfKJ8dx (Flash)
文章代碼(AID): #1DfKJ8dx (Flash)