mozilla
您的搜索结果

    isPrototypeOf

    概述

    isPrototypeOf() 方法测试一个对象是否存在于另一个对象的原型链上。

    语法

    prototype.isPrototypeOf(object)

    参数

    prototype
    检查该对象是否在参数object的原型链上.
    : isPrototypeOf 和 instanceof operator 的作用完全不同。在表达式 object instanceof AFunction中,检测的是AFunction.prototype是否在object的原型链中,而不是检测AFunction自身。
    object
    在该对象的原型链上搜寻

    描述

    isPrototypeOf 方法允许你检查一个对象是否存在于另一个对象的原型链上。

    例如,考虑下面的原型链:

    function Fee() {
      // . . .
    }
    
    function Fi() {
      // . . .
    }
    Fi.prototype = new Fee();
    
    function Fo() {
      // . . .
    }
    Fo.prototype = new Fi();
    
    function Fum() {
      // . . .
    }
    Fum.prototype = new Fo();

    下面创建一个 Fum 实例,检测 Fi.prototype 是否存在于该实例的原型链上.

    var fum = new Fum();
    . . .
    
    if (Fi.prototype.isPrototypeOf(fum)) {
      // do something safe
    }

    规范

    规范版本 规范状态 注解
    ECMAScript 3rd Edition. Standard Initial definition.
    ECMAScript 5.1 (ECMA-262)
    Object.prototype.hasOwnProperty
    Standard  
    ECMAScript 6 (ECMA-262)
    Object.prototype.hasOwnProperty
    Draft  

    浏览器兼容性

    Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
    Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

    相关链接

    文档标签和贡献者

    此页面的贡献者有: ziyunfei, AlexChao, teoli
    最后编辑者: AlexChao,