`
longgangbai
  • 浏览: 7323950 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

flex中自己写的一个BeanUtils类

阅读更多

在项目中不时由对象之间属性的的拷贝所以写了此类,感觉不是很好但是不知道哪里有错?希望各位提出意见:

 

 

package conponents
{
 import mx.collections.ArrayCollection;
 
 public class BeanUtils
 {
  import mx.utils.ObjectUtil;
  import mx.utils.StringUtil;
  import mx.utils.ArrayUtil;
  
  public function BeanUtils()
  {
  }
  
     /**
     * 对象的赋值的过程的方法
     * @source  赋值过程源的对象
     * @desc    赋值过程目标的对象
     * @propertys 赋值源中标的属性数组
     * @isInclude 是否包括赋值源中属性
     */
  public static  function copyObject(source:Object, desc:Object, propertysArr:Array=null,isInclude:Boolean=false):Object
  {
   if(isInclude)
   {
    if(propertysArr!=null&&propertysArr.length>0)
    {
       for (var i:int=0; i < properties.length; i++)
       {
         desc[fieldName]=source[fieldName];
       }
    }
   }else{//不包含复制元中的属性
       //得到拷贝对象的源对象
          var classInfo:Object = ObjectUtil.getClassInfo(source);
          //获取所有的属性信息
       var properties:Array = classInfo.properties;
       for (var i:int=0; i < properties.length; i++) {
       var fieldName:String = QName(properties[i]).localName;
       if(properties!=null&&properties.length>0)
            {
               var  index:int=ArrayUtil.getItemIndex(fieldName,propertysArr);
         if(index==-1)
         {
             desc[fieldName]=source[fieldName];
         }
            }
       }
   }
   return desc;
   }
  
  
 }
}

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics