作者STARGAZERs (星之影)
看板Flash
标题Re: [问题] AS2.0转AS3.0 function问题
时间Wed Apr 13 14:37:56 2011
※ 引述《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
1F:推 bujinron:最下面那个方法跟我AS2的写法依样,AS3似乎不给过 04/13 17:05
2F:→ STARGAZERs:那就乖乖的另外写吧 :P 04/13 17:11
3F:→ aquarianboy:而且这种monkey patching在instance上乱插东西的写法 04/13 17:13
4F:→ aquarianboy:也比较不建议 04/13 17:13