Compartilhar via


Operador de instanceof

Retorna um valor booleano 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

O instanceof o operador retorna true se objeto é uma instância de class ou construídas em função. Ele retorna false se objeto não é uma instância da classe especificada ou função, ou se objeto é 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 o instanceof o operador para verificar o tipo de 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 o instanceof o operador para verificar as instâncias da função construído.

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 o 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