Operador instanceof

Retorna um valor booliano que indica se ou não um objeto é uma instância de uma determinada classe ou função construída.

object instanceof class

Argumentos

  • object
    Obrigatório.Qualquer expressão de objeto.

  • class
    Obrigatório.Qualquer classe de objeto ou função construída.

Comentários

The instanceof o operador retorna True if objeto é uma instância de class ou função construída. Ela retornará False if objeto não é uma instância da classe especificada ou função, ou se objeto is null.

O JScript Object é especial. Um objeto é considerado apenas uma instância de Object Se e somente se o objeto foi construído com o Object construtor.

Exemplo 1

O exemplo a seguir ilustra um uso do instanceof operador para verificar o tipo de uma variável.

// This program uses System.DateTime, which must be imported.
import System

function isDate(ob) : String {
   if (ob instanceof Date)
      return "It's a JScript Date"
   if (ob instanceof DateTime)
      return "It's a .NET Framework Date"
   return "It's not a date"
}

var d1 : DateTime = DateTime.Now
var d2 : Date = new Date
print(isDate(d1))
print(isDate(d2))

A saída desse código é:

It's a .NET Date
It's a JScript Date

Exemplo 2

O exemplo a seguir ilustra um uso do instanceof operador para verificar as instâncias de uma função criada.

function square(x : int) : int {
   return x*x
}

function bracket(s : String) : String{
   return("[" + s + "]");
}

var f = new square
print(f instanceof square)
print(f instanceof bracket)

A saída desse código é:

true
false

Exemplo 3

O exemplo a seguir ilustra como a instanceof operador verifica se os objetos são instâncias de Object.

class CDerived extends Object {
   var x : double;
}

var f : CDerived = new CDerived;
var ob : Object = f;
print(ob instanceof Object);

ob = new Object;
print(ob instanceof Object);

A saída desse código é:

false
true

Requisitos

Versão 5

Consulte também

Conceitos

Precedência de operador

Resumo do operador