flash – AS3可以返回两种类型的方法的最佳实践
我一直在为ActionScript 3开发一个框架,并且遇到了一个特殊的场景,我希望一个方法能够返回一个AvFrameworkObject或一个包含多个AvFrameworkObject实例的Array.
使用此方法用于注册AvFrameworkObject的一个或多个实例: public function register(...objects):Object { var reg:Array = []; var i:AvFrameworkObject; for each(i in objects) { i.fw = this; reg.push(i); } return reg.length > 1 ? reg : reg[0]; } 以上几点: >这对我来说似乎非常草率.是真的吗? 解决方法
据我所知,所有对象都通过
by reference:
您不必返回任何内容,只需设置fw变量成员即可. 话虽这么说,你有一些关于如何返回多个变量的选项. >一种常见的方法是返回返回的数组的计数,并使用参数来设置数组.调用就像var length:int = register(out,object1,object2,object3).然后你可以在for循环中使用length变量. 我个人不喜欢返回一个抽象对象,通常我选择返回整个数组. 希望这可以帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |