如何检查AS3“对象”变量是否完全为空?

时间:2010-11-19 04:35:36

标签: actionscript-3 object reference-type

在Actionscript 3.0中,如何检查var myObject:Object在功能上是否与{}相同?

我认为我做不到......

if (myObject == {}) {
  // etc
}

...因为对象是引用类型,对吧?

2 个答案:

答案 0 :(得分:6)

检查它是否至少存在一个字段:

function isEmptyObject(myObject:Object):Boolean {
 var isEmpty:Boolean=true;

 for (var s:String in myObject) {
   isEmpty = false;
   break;
 }

 return isEmpty;
}

答案 1 :(得分:1)

这适用于动态对象和类,以检查对象是否包含字段,这应该是更通用的解决方案

import flash.utils.describeType;

var test:String = "test";

var data:XML = describeType(test);
trace(data..accessor.length() > 0 || data..variable.length() > 0)