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 を返す