# ``instanceof`` operator is partially supported Rule ``arkts-instanceof-ref-types`` **Severity: error** In TypeScript, the left-hand side of an ``instanceof`` expression must be of the type ``any``, an object type or a type parameter; the result is ``false`` otherwise. In ArkTS, the left-hand side expression may be of any reference type; a compile-time error occurs otherwise. In addition, the left operand in ArkTS cannot be a type. ## TypeScript ``` class X { // ... } let a = (new X()) instanceof Object // true let b = (new X()) instanceof X // true let c = X instanceof Object // true, left operand is a type let d = X instanceof X // false, left operand is a type ``` ## ArkTS ``` class X { // ... } let a = (new X()) instanceof Object // true let b = (new X()) instanceof X // true let c = X instanceof Object // Compile-time error, left operand is a type let d = X instanceof X // Compile-time error, left operand is a type ```