Your Search Results

    isPrototypeOf

    この文書は翻訳中です。他国語のままの部分などがあるのはその為です。
    是非お気軽に MDN に登録して翻訳に参加し、私たちの手助けをして下さい!

    概要

    オブジェクトが別のオブジェクトのプロトタイプチェーンに存在するかどうかを判定します。

    Object オブジェクトのメソッド
    実装されたバージョン JavaScript ?
    ECMAScript エディション ECMAScript 3rd Edition

    構文

    prototype.isPrototypeOf(object)

    引数

    prototype
    引数に指定したオブジェクトのプロトタイプチェーン内の各リンクに対してテストするオブジェクト
    注記: isPrototypeOfinstanceof 演算子 とは異なるものです。In the expression object instanceof AFunction, the object prototype chain is checked against AFunction.prototype, not against AFunction itself
    object
    プロトタイプチェーンの検索対象

    説明

    isPrototypeOf を用いると、オブジェクトが別のオブジェクト内のプロトタイプチェーンに存在するかどうかをチェックする事ができます。

    例えば、次の様なプロトタイプチェーンがあったとします。

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

    Later on down the road, if you instantiate Fum and need to check if Fi's prototype exists within the Fum prototype chain, you could do this:

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

    This, along with the instanceof operator particularly comes in handy if you have code that can only function when dealing with objects descended from a specific prototype chain, e.g., to guarantee that certain methods or properties will be present on that object.

    関連情報

    Document Tags and Contributors

    Contributors to this page: Potappo
    最終更新者: Potappo,