JavaScript でオブジェクトに特定のプロパティがあるかどうかを判断する方法 [重複] 質問する

JavaScript でオブジェクトに特定のプロパティがあるかどうかを判断する方法 [重複] 質問する

の値に関係なく、オブジェクトにx定義されたプロパティがあるかどうかを判断するにはどうすればよいでしょうか?yx.y

現在使用中

if (typeof(x.y) !== 'undefined')

しかし、それは少し不格好に思えます。もっと良い方法はあるでしょうか?

ベストアンサー1

オブジェクトにはプロパティがあります:

オブジェクト自体のプロパティ(プロトタイプチェーンの一部ではない)をテストする場合は、次のように使用できます。.hasOwnProperty():

if (x.hasOwnProperty('y')) { 
  // ......
}

オブジェクトまたはそのプロトタイプには次のプロパティがあります:

あなたはin継承されるプロパティもテストする演算子。

if ('y' in x) {
  // ......
}

おすすめ記事