Visit Mozilla.org

Core JavaScript 1.5 Reference:Global Objects:Object:hasOwnProperty

出典: MDC


目次

[編集] 概要

オブジェクトが指定されたプロパティを持っているかどうかを示す真偽値を返します。

[編集] 構文

hasOwnProperty(prop)

[編集] 引数

prop 
調べたいプロパティの名前。

[編集] 説明

Object の子孫にあたるあらゆるオブジェクトは hasOwnProperty メソッドを継承しています。このメソッドはあるオブジェクトが指定されたプロパティを、そのオブジェクトの直接のプロパティとして持っているかどうかを特定するのに使うことができます。in 演算子と違って、このメソッドはオブジェクトのプロトタイプチェーンをたどってチェックしません。

[編集]

[編集] 例: hasOwnProperty を使ってプロパティの存在を調べる

以下の例は o オブジェクトが prop という名前のプロパティを含んでいるかどうかを特定します:

o = new Object();
o.prop = 'exists';

function changeO() {
  o.newprop = o.prop;
  delete o.prop;
}

o.hasOwnProperty('prop');   // true を返す
changeO();
o.hasOwnProperty('prop');   // false を返す

[編集] 例: 直接のプロパティと継承されたプロパティ

以下の例は直接のプロパティとプロトタイプチェーンを通じで継承されたプロパティを識別しています:

o = new Object();
o.prop = 'exists';
o.hasOwnProperty('prop');             // true を返す
o.hasOwnProperty('toString');         // false を返す
o.hasOwnProperty('hasOwnProperty');   // false を返す

[編集] 参照

in