1. ホーム
  2. ジャバスクリプト

[解決済み】JavaScriptでオブジェクトが与えられたプロパティを持つかどうかを判断する方法

2022-03-25 15:51:05

質問

オブジェクトが x は、定義されたプロパティ y の値に関係なく x.y ?

現在使用しているのは

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

が、これではちょっと不便な気がします。もっといい方法はないでしょうか?

どのように解決するのですか?

オブジェクトにプロパティがある。

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

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

オブジェクトまたはそのプロトタイプがプロパティを持つ。

を使用することができます。 in 演算子を使って、同様に継承されるプロパティをテストすることができます。

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