Aktualizacja: Na podstawie udzielonych odpowiedzi początkowo podążałem drogą użycia IsInstanceOf(), która została zaprojektowana do tej potrzeby. Jednak okazało się to niezwykle nieefektywne z jakiegoś nieznanego powodu. Podczas debugowania aplikacji później skończyłem właśnie ustawiając pewne właściwości obiektu do użycia zamiast IsInstanceOf, co skutkowało zwiększeniem prędkości rzędu magnitud.Czy można przetestować obiekt na typie komponentu i/lub odziedziczonym typie?
Co próbuję zrobić, to przetestować obiekt w ColdFusion, aby zobaczyć, jaki jest jego typ. Coś jak ...
<cfif isValid("compath.dog", currentObj)>
...do something specific with dog objects...
</cfif>
Myślałem, że to możliwe, ale pojawia się błąd mówiąc typ jestem przechodzącej nie odpowiada jeden w ważnej listy typów ...
Poprawne argumenty typu są: any, array, Boolean, date, numeric, query, string, struct, UUID, GUID, binary, integer, float, eurodate, time, creditcard, email, ssn, telephone, zipcode, url, regex, range, component, lub nazwa_zmiennej.
Czy można to osiągnąć w ColdFusion?
Wierzę, że gdzie doktorzy mówią, "składnik" na tej liście, można dosłownie wpisać "składnik" i to będzie ocenić, czy zmienna jest składnikiem. Aby sprawdzić, czy jest to klasa konkretnego komponentu, skorzystaj z przykładu Sam Farmera poniżej. –