JavaScriptには2つの特別な値があります。未定義とnullです。それらを比較する際には注意する必要があります。割り当てされていない変数を読んだり、オブジェクトに持っていないプロパティを読み込もうとすると、未定義の値が得られます。
<!doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title> Learn4undefinedandnull </title> </head> <body> <script> var mydata = {name: "luka"、wather: "sunny"}; document.writeln( "prop:"+mydata.doesnexits); </scrip> </body> </html>出力結果:
小道具:未定義
JavaScriptは、未定義とはわずかに異なる特別な値nullも定義します。後者は、値が定義されていないときに取得される値であり、前者は値が割り当てられているが有効なオブジェクト、文字列、数値、またはブール値ではないことを示すために使用されます(つまり、定義された値は値のない[値なし])。
次のコードでは、未定義とnullを使用して、さまざまな効果を示します。
<!doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title> Learn4undefinedandnull </title> </head> <body> <body> <script> {name: "luka"}; // Weather属性document.writeln( "var:"+mydata.weather+"<br />")を読む//オブジェクトに天気属性document.writeln( "prop:"+( "天気" in mydata)+"<br /> <br />"); mydata.weather = "sunny"; document.writeln( "var:"+mydata.weather+"<br />"); document.writeln( "prop:"+( "天気" mydata)+"<br /> <br />"); mydata.weather = null; document.writeln( "var:"+mydata.weather+"<br />"); document.writeln( "prop:"+( "天気" mydata)+"<br/> <br/>"); </script> </body> </html>出力結果:
var:未定義プロップ:falsevar:sunnyprop:truevar:nullprop:true
1.変数またはプロパティが未定義であるかヌルかを確認してください
プロパティがnullまたは未定義であるかどうかを確認する場合(どのプロパティに関係なく)、ifステートメントと論理非操作者(!)を使用してください。
< if(!mydata.name){document.writeln( "name is nullまたはundefined <br /> <br />"); } else {document.writeln( "名前はnullまたはundefined <br /> <br />")} if(!mydata.city){document.writeln( "都市はnullまたは未定<br /> <br />"); } else {document.writeln( "都市はnullまたは未定義ではありません<br /> <br />")} if(!mydata.weather){document.writeln( "天気はnullまたは未定<br /> <br />"); } else {document.writeln( "天気はnullまたは非定義ではありません<br/> <br/>")} </script> </body> </html>出力結果:
名前はnullではなく、nullまたはundefinedcityがnullまたは未定のnullまたは未定義です
2。ヌルと未定義を区別します
2つの値を比較する場合、使用する方法はニーズに応じて決定する必要があります。未定義の値とnull値を均等に扱う場合は、Equality Operator(==)を使用して、JavaScriptをタイプ変換を実行させる必要があります。現時点では、未定義の値を持つ変数は、nullの値を持つ変数に等しいと見なされます。 nullと未定義を区別したい場合は、同等の演算子(===)を使用する必要があります。
<!doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title> Learn4undefinedandnull </title> </head> <body> <body> var var = null; var Secondval; var equality = firstval == secondval; var Identity = firstval === secondval; document.writeln( "equality:"+equality+"<br />"); document.writeln( "Identity:"+Identity+"<br />"); document.writeln( "Identity:"+Identity+"<br />"); /> "); </script> </body> </html>
出力結果:
平等:TrueIdentity:false
上記のjavaScript basics_simple未定義とヌル値の比較は、私があなたと共有するすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。