Creating ColdFusion's missing "instanceof" method

在ColdFusion中没有 instanceof关健字,所以只能自己写个函数代替,用来比较一个对象是否是另
一个类的实例:
 1  < cffunction  name ="isInstanceOf"  access ="public"  returntype ="Boolean"  output ="false" >
 2     < cfargument  name ="obj"  type ="any"  required ="true" />
 3     < cfargument  name ="reqType"  type ="string"  required ="true"   />
 4     < cfset  var searchMd  = getMetaData(obj)  />
 5     < cfif  searchMd.name IS reqType  >
 6       < cfreturn  true  />
 7     < cfelse >  
 8       < cfloop  condition ="#StructKeyExists(searchMd, " extends")#" >
 9          < cfset  searchMd  = searchMd.extends  />
10          < cfif  searchMd.name IS reqType >
11            < cfreturn  true  />
12          </ cfif >
13       </ cfloop >
14     </ cfif >
15     < cfreturn  false  />
16  </ cffunction >
17 
同时可以参考 Hal Helms的 BaseComponent.cfc中的 isInstanceOf函数.

你可能感兴趣的:(Creating ColdFusion's missing "instanceof" method)