ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で変数を使用してオブジェクト プロパティの存在を確認する方法

JavaScript で変数を使用してオブジェクト プロパティの存在を確認する方法

DDD
DDDオリジナル
2024-10-31 18:35:29888ブラウズ

How to Check for Object Property Existence Using a Variable in JavaScript?

変数を使用したオブジェクト プロパティの存在の確認

JavaScript では、変数を使用してオブジェクト プロパティの存在を確認することが一般的なタスクになることがあります。ただし、変数をプロパティ名として直接使用すると、未定義の結果が生じます。

例:

<code class="js">var myObj;
myObj.prop = "exists";
var myProp = "p" + "r" + "o" + "p";

if (myObj.myProp) {
  alert("yes, i have that property");
};  // Undefined</code>

これを解決するには、プロパティを明示的にチェックするメソッドを利用する必要があります。

解決策:

オプション 1: hasOwnProperty

<code class="js">var myProp = 'prop';
if (myObj.hasOwnProperty(myProp)) {
  alert("yes, i have that property");
}</code>

オプション 2: in 演算子 (直接プロパティと継承プロパティの両方をチェックします)

<code class="js">var myProp = 'prop';
if (myProp in myObj) {
  alert("yes, i have that property");
}</code>

オプション 3: 演算子の直接使​​用 (直接プロパティのみをチェックします)

<code class="js">if ('prop' in myObj) {
  alert("yes, i have that property");
}</code>

注: hasOwnProperty は継承されたプロパティをチェックしませんが、in 演算子はチェックします。

以上がJavaScript で変数を使用してオブジェクト プロパティの存在を確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。