ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript は、オブジェクト内に特定の属性インスタンス コードの概要があるかどうかを判断します。

JavaScript は、オブジェクト内に特定の属性インスタンス コードの概要があるかどうかを判断します。

伊谢尔伦
伊谢尔伦オリジナル
2017-07-21 11:49:191297ブラウズ

1. in キーワードを使用します

このメソッドは、オブジェクト自身のプロパティと継承されたプロパティが存在するかどうかを判断できます。

var o={x:1}; 
"x" in o; //true,自有属性存在 
"y" in o; //false 
"toString" in o; //true,是一个继承属性

2. オブジェクトの hasOwnProperty() メソッドを使用します このメソッドは、独自のプロパティが存在するかどうかのみを判断し、継承されたプロパティについては false を返します。

var o={x:1}; 
o.hasOwnProperty("x");    //true,自有属性中有x 
o.hasOwnProperty("y");    //false,自有属性中不存在y 
o.hasOwnProperty("toString"); //false,这是一个继承属性,但不是自有属性

3. unfineed を使用して判定します 自身のプロパティと継承されたプロパティの両方を判定できます。

var o={x:1}; 
o.x!==undefined; //true 
o.y!==undefined; //false 
o.toString!==undefined //true

このメソッドには次のように問題があります。属性の値が定義されていない場合、このメソッドは望ましい結果を返すことができません。

var o={x:undefined}; 
o.x!==undefined; //false,属性存在,但值是undefined 
o.y!==undefined; //false 
o.toString!==undefined //true

4. 条件文で直接判断する

var o={}; 
if(o.x) o.x+=1; //如果x是undefine,null,false," ",0或NaN,它将保持不变


以上がJavaScript は、オブジェクト内に特定の属性インスタンス コードの概要があるかどうかを判断します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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