専用の投稿をいくつか見ましhasOwnProperty
たが、単純なものよりも使用する必要があるかどうか(およびいつ使用する必要があるか)はまだ疑問ですobj.prop
if (obj.hasOwnProperty("prop"))
オブジェクトが継承されていないプロパティを定義しているかどうかを確認するのに役立ちますprop
が、単に行うよりもはるかに優れていif (obj.prop)
ますか?
はしごは、ネストされたオブジェクトがある場合に特に便利です。たとえば、superheros
のプロパティを持ち、dcComics
そのプロパティ内に別のプロパティを持つオブジェクトがある場合batman
を使用してバットマンが設定されているかどうかを確認するhasOwnProperty
には、次のようにする必要があります。
if (superheros.hasOwnProperty("dcComics") && superheros.dcComics.hasOwnProperty("batman") {...}
シンプルな prop チェックを使用する:
if (superheros.dcComics && superheros.dcComics.batman)
ほとんどの場合、独自の js オブジェクトを定義していない場合、単に使用しても問題ありobj.prop
ませんか?