要查看英语原文,请勾选“英语”复选框。也可将鼠标指针移到文本上,在弹出窗口中显示英语原文。
翻译
英语

instanceof 运算符 (JavaScript)

 

返回一个布尔值,该值指示一个对象是否为特定类的一个实例。


result = object instanceof class

result

必需。任何变量。

object

必需。任何对象表达式。

class

必需。任何定义的对象类。

如果 objectclass 的一个实例,则 instanceof 运算符返回 true如果 class 存在于对象的原型链中(为 true),则该运算符返回 true如果 object 不是 class 的实例,或 objectnull,则该运算符返回 false

以下示例演示如何使用 instanceof 运算符。

function objTest(obj){
    var i, t, s = "";
    t = new Array();
    t["Date"] = Date;
    t["Object"] = Object;
    t["Array"] = Array;
        for (i in t){
            if (obj instanceof t[i]) { 
                s += "obj is an instance of " + i + "<br/>";
            }
            else {
                s += "obj is not an instance of " + i + "<br/>";
        }
    }
    return(s);
}

var obj = new Date();
document.write(objTest(obj));

// Output: 
// obj is an instance of Date
// obj is an instance of Object
// obj is not an instance of Array

要求

在以下文档模式中受支持:Quirks、Internet Explorer 6 标准模式、Internet Explorer 7 标准模式、Internet Explorer 8 标准模式、Internet Explorer 9 标准模式、Internet Explorer 10 标准模式和 Internet Explorer 11 标准模式。此外,也在应用商店应用(Windows 8 和 Windows Phone 8.1)中受支持。请参阅版本信息

显示: